Position actuelle: Accueil> Derniers articles> Utilisez HexDec et Sprintf pour gérer les exigences de conversion en majuscules et en minuscules

Utilisez HexDec et Sprintf pour gérer les exigences de conversion en majuscules et en minuscules

gitbox 2025-05-28

1. Introduction à la fonction hexdec ()

La fonction de la fonction hexdec () est de convertir une chaîne hexagonale en un entier décimal. La syntaxe est la suivante:

 $decimal = hexdec("1A");

Le code ci-dessus convertit la chaîne "1a" en décimal 26 . Il convient de noter que hexdec () est sensible à la casse, et les résultats de "1a" et "1a" sont les mêmes.

2. Introduction à la fonction sprintf ()

sprintf () est utilisé pour formater les variables en chaînes. Nous pouvons l'utiliser pour formater des entiers en chaînes hexadécimales avec un cas spécifié:

 $hexLower = sprintf("%x", 255); // Sortir "ff"
$hexUpper = sprintf("%X", 255); // Sortir "FF"

% x représente le format hexadécimal minuscule, et % x représente la majuscule.

3. Hexdec et Sprintf sont utilisés ensemble

En combinant hexdec () et sprintf () , nous pouvons implémenter la conversion de cas de toute chaîne hexagonale:

 $originalHex = "a1b2c3";
$decimal = hexdec($originalHex);          // Convertir en décimal
$upperHex = sprintf("%X", $decimal);      // Convertir en capital hexadécimal
$lowerHex = sprintf("%x", $decimal);      // Convertir en minuscules en minuscules

Après avoir exécuté le code ci-dessus:

  • $ upperhex est "A1b2c3"

  • $ LowerHex est "A1B2C3"

Cette approche convient particulièrement aux formats d'entrée unifiés ou à l'amarrage avec des systèmes externes sensibles à la casse, tels que certaines interfaces API qui nécessitent des chaînes hexadécimales en majuscules.

4. Exemple d'application: Contrôle des cas hexadécimaux dans le codage de l'URL

Parfois, nous devons construire une URL contenant un codage hexadécimal, et le codage % xx dans l'URL peut nécessiter un cas uniforme. Par exemple:

 $char = "#";
$encoded = strtoupper(bin2hex($char)); // obtenir "23"
$url = "https://gitbox.net/page.php?param=%" . $encoded;

L'URL de sortie est:

 https://gitbox.net/page.php?param=%23

Si vous souhaitez utiliser les minuscules, remplacez simplement Strtoupper () par strtolower () , ou utilisez directement Sprintf ('% x', ord ($ char)) .

5. Résumé

Analyser toute chaîne hexadeci dans un entier via hexdec () , puis l'utilisation de sprintf () peut facilement contrôler si le format hexadécimal de sortie est en majuscule ou en minuscules. Cette méthode est non seulement simple, mais a également une forte compatibilité et convient à divers scénarios tels que la conversion de codage et la mise en forme des données.

La maîtrise de la combinaison de ces deux fonctions peut vous rendre plus à l'aise lorsque vous traitez avec des cordes hexadécimales.