HexDec est une fonction intégrée PHP qui convertit les cordes hexagonales en entiers décimaux.
int hexdec ( string $hex_string )
Par exemple:
echo hexdec("1A"); // Sortir 26
Le substr est utilisé pour intercepter les sous-chaînes de positions et de longueurs spécifiées dans les chaînes.
string substr ( string $string , int $start [, int $length ] )
Par exemple:
echo substr("abcdef", 1, 3); // Sortir "bcd"
Supposons que nous ayons une chaîne contenant plusieurs numéros hexadécimaux mélangés à d'autres caractères, tels que:
$data = "id=abc1234fxyz";
Notre objectif est d'extraire la partie "1234f" de cette chaîne (en supposant que sa position est connue) et de la convertir en un numéro décimal.
La méthode d'implémentation est la suivante:
<?php
$data = "id=abc1234fxyz";
// De la chaîne6Commencez par des personnages,Intercepter5Personnages(Tout de suite "1234f")
$hexString = substr($data, 5, 5);
// 将Intercepter的Corde hexadécimale转换为十进制数字
$decimalValue = hexdec($hexString);
echo "Corde hexadécimale: " . $hexString . "\n";
echo "Valeurs décimales converties: " . $decimalValue . "\n";
?>
Sortir:
Corde hexadécimale: 1234f
Valeurs décimales converties: 74575
Si la chaîne hexadécimale n'est pas en position fixe, vous pouvez utiliser la fonction de recherche de chaîne STRPOS pour la localiser, puis l'intercepter avec substr .
Par exemple:
<?php
$data = "user=xyz&code=1a2b3c&status=ok";
// venez "code=" Position en chaîne
$pos = strpos($data, "code=");
if ($pos !== false) {
// "code=" La position de départ du numéro hexadécimal
$start = $pos + strlen("code=");
// Supposons que la longueur du numéro hexadécimal est6
$hexString = substr($data, $start, 6);
$decimalValue = hexdec($hexString);
echo "提取的Corde hexadécimale: " . $hexString . "\n";
echo "Valeurs décimales converties: " . $decimalValue . "\n";
} else {
echo "未venez指定的Corde hexadécimale。\n";
}
?>
Sortir:
提取的Corde hexadécimale: 1a2b3c
Valeurs décimales converties: 1715004
substr est utilisé pour intercepter la partie spécifiée de la chaîne.
Hexdec convertit une chaîne hexagonale en valeur décimale.
La combinaison des deux facilite l'extraction et la convertissement des nombres hexadécimaux intégrés dans une chaîne.