Maison  >  Article  >  développement back-end  >  Écrivez un programme en PHP pour convertir une chaîne de sortie hexadécimale et inversée

Écrivez un programme en PHP pour convertir une chaîne de sortie hexadécimale et inversée

WBOY
WBOYoriginal
2024-03-22 09:06:03670parcourir

Écrivez un programme en PHP pour convertir une chaîne de sortie hexadécimale et inversée

Écrivez un programme en PHP pour convertir un hexadécimal et afficher une chaîne de manière inversée

En programmation, vous rencontrez souvent des situations où vous devez convertir une chaîne en hexadécimal, ou vous devez convertir un nombre hexadécimal en une chaîne de caractères. Aujourd'hui, nous allons vous présenter comment utiliser PHP pour écrire un programme permettant de convertir une chaîne en hexadécimal et de générer la chaîne à l'envers.

1. Convertir une chaîne en hexadécimal

Tout d'abord, nous devons écrire une fonction pour convertir une chaîne en hexadécimal. Voici un exemple de code PHP :

function strToHex($string){
    $hex = '';
    for ($i=0; $i < strlen($string); $i++){
        $hex .= dechex(ord($string[$i]));
    }
    return $hex;
}

// 测试
$str = "Hello, World!";
$hex = strToHex($str);
echo "字符串转换为16进制:".$hex;

Dans le code ci-dessus, la fonction strToHex accepte une chaîne comme paramètre puis utilise la fonction ord pour convertir chaque caractère en un Valeur ASCII, puis utilisez la fonction decex pour convertir la valeur ASCII en représentation hexadécimale. Enfin, toutes les chaînes hexadécimales sont concaténées et sorties. strToHex函数接受一个字符串作为参数,然后使用ord函数将每个字符转换为ASCII值,再使用dechex函数将ASCII值转换为16进制表示。最后将所有的16进制字符串拼接起来输出。

2. 16进制转换为字符串

接下来,我们需要编写一个函数来实现将16进制转换为字符串的功能。代码如下:

function hexToStr($hex){
    $string = '';
    for ($i=0; $i < strlen($hex)-1; $i+=2){
        $string .= chr(hexdec($hex[$i].$hex[$i+1]));
    }
    return $string;
}

// 测试
$hex = "48656c6c6f2c20576f726c6421";
$str = hexToStr($hex);
echo "16进制转换为字符串:".$str;

在上面的代码中,hexToStr函数接受一个16进制字符串作为参数,然后将连续的两个16进制字符组合起来转换为ASCII值,再使用chr

2. Convertir l'hexadécimal en chaîne

Ensuite, nous devons écrire une fonction pour convertir l'hexadécimal en chaîne. Le code est le suivant :

function strToHex($string){
    $hex = '';
    for ($i=0; $i < strlen($string); $i++){
        $hex .= dechex(ord($string[$i]));
    }
    return $hex;
}

function hexToStr($hex){
    $string = '';
    for ($i=0; $i < strlen($hex)-1; $i+=2){
        $string .= chr(hexdec($hex[$i].$hex[$i+1]));
    }
    return $string;
}

// 测试
$str = "Hello, World!";
$hex = strToHex($str);
echo "字符串转换为16进制:".$hex."
";

$reversedStr = hexToStr($hex);
echo "反向输出字符串:".$reversedStr;

Dans le code ci-dessus, la fonction hexToStr accepte une chaîne hexadécimale comme paramètre, puis combine deux caractères hexadécimaux consécutifs pour les convertir en valeurs ASCII, puis utilise Le La fonction chr convertit les valeurs ASCII en caractères correspondants. Concaténez tous les caractères pour obtenir la chaîne finale.

3. Exemple de code complet🎜🎜Intégrez les deux fonctions ci-dessus dans un script PHP complet, comme indiqué ci-dessous : 🎜rrreee🎜Grâce à l'exemple de code ci-dessus, nous pouvons réaliser une conversion mutuelle entre les chaînes et l'hexadécimal et générer des chaînes à l'envers. De telles fonctions sont souvent utilisées dans le cryptage des données, la transmission de données, etc. J'espère que cela vous sera utile. 🎜

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