Maison  >  Article  >  développement back-end  >  Comment convertir des données en chaîne hexadécimale en php

Comment convertir des données en chaîne hexadécimale en php

青灯夜游
青灯夜游original
2022-08-25 18:28:013191parcourir

3 méthodes de conversion : 1. Utilisez la fonction dechex() pour convertir des nombres décimaux en chaînes hexadécimales, la syntaxe est "dechex (valeur de données spécifiée) ;". 2. Utilisez la fonction base_convert() pour convertir n'importe quelle valeur de base en chaîne hexadécimale. La syntaxe est "base_convert(data value, original base, 16);". 3. Utilisez la fonction bin2hex() pour convertir une chaîne de caractères ASCII en chaîne hexadécimale, avec la syntaxe "bin2hex (valeur de données)".

Comment convertir des données en chaîne hexadécimale en php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3

En php, il existe deux situations pour convertir des données en chaînes hexadécimales :

  • Convertir autre Convertir hexadécimal données en chaîne hexadécimale

  • Convertir une chaîne de caractères ASCII en chaîne hexadécimale

Différentes fonctions sont utilisées dans différentes situations.

Cas 1 : Convertir d'autres données de base en chaînes hexadécimales

PHP fournit deux fonctions de conversion :

  • fonction dechex()

  • fonction base_convert()

1.déx( ) function conversion

dechex() convertit les nombres décimaux en nombres hexadécimaux.

dechex(number);

Valeur de retour : une chaîne contenant un nombre hexadécimal avec une valeur décimale.​

Exemple :

<?php
echo dechex("30") . "<br>";
echo dechex("10") . "<br>";
echo dechex("1587") . "<br>";
echo dechex("70");
?>

Comment convertir des données en chaîne hexadécimale en php

Description :

hexdec() Convertit une chaîne hexadécimale en nombre décimal. La valeur maximale pouvant être convertie est 7ffffffff, soit 2147483647 en décimal. À partir de PHP 4.1.0, cette fonction peut gérer de grands nombres, auquel cas elle renvoie un type float.

hexdec() Remplace tous les caractères non hexadécimaux rencontrés par 0. De cette façon, tous les zéros de gauche sont ignorés, mais les zéros de droite sont inclus dans la valeur.

2. Conversion de la fonction base_convert()

La fonction base_convert() convertit les nombres entre des bases arbitraires.

base_convert(number,frombase,tobase);
paramètre description
numéro obligatoire. Spécifie le nombre à convertir.
frombase Obligatoire. Spécifie la base d'origine du numéro. Entre 2 et 36 (inclus). Les nombres au-dessus de la décimale sont représentés par les lettres a à z, telles que a pour 10, b pour 11 et z pour 35.
tobase Obligatoire. Spécifie la base à convertir. Entre 2 et 36 (inclus). Les nombres au-dessus de la décimale sont représentés par les lettres a à z, telles que a pour 10, b pour 11 et z pour 35.

Lorsque la valeur du paramètre tobase est 16, d'autres nombres de base peuvent être convertis en nombres hexadécimaux.

Exemple :

<?php
echo base_convert("30", 10, 16) . "<br>";
echo base_convert("364", 8, 16) . "<br>";
?>

Comment convertir des données en chaîne hexadécimale en php

Explication : La fonction

base_convert() peut également convertir l'hexadécimal en d'autres bases. Dans ce cas, la valeur du paramètre frombase doit être une valeur fixe de 16.

Exemple 16 à 10 :

<?php
echo base_convert("1e", 16, 10) . "<br>";
echo base_convert("a", 16, 10) . "<br>";
echo base_convert("11ff", 16, 10) . "<br>";
echo base_convert("cceeff", 16, 10);
?>

Comment convertir des données en chaîne hexadécimale en php

Si vous souhaitez simplement convertir 16 en 10, il existe une fonction plus pratique hexdec()

hexdec() pour convertir une chaîne hexadécimale en nombre décimal. La valeur maximale pouvant être convertie est 7ffffffff, soit 2147483647 en décimal. À partir de PHP 4.1.0, cette fonction peut gérer de grands nombres, auquel cas elle renvoie un type float.

hexdec() Remplace tous les caractères non hexadécimaux rencontrés par 0. De cette façon, tous les zéros de gauche sont ignorés, mais les zéros de droite sont inclus dans la valeur.

<?php
echo hexdec("1e") . "<br>";
echo hexdec("a") . "<br>";
echo hexdec("11ff") . "<br>";
echo hexdec("cceeff");
?>

Comment convertir des données en chaîne hexadécimale en php

Cas 2 : Convertir une chaîne de caractères ASCII en chaîne hexadécimale

La fonction bin2hex() convertit la chaîne de caractères ASCII en valeur hexadécimale.

bin2hex(string)

Valeur de retour : renvoie la valeur hexadécimale de la chaîne à convertir.

<?php
echo bin2hex("Hello!")."<br>";
echo bin2hex("123")."<br>";
echo bin2hex("10")."<br>";
?>

Comment convertir des données en chaîne hexadécimale en php

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn