Maison >développement back-end >tutoriel php >PHP renvoie la valeur ASCII du premier caractère d'une fonction de chaîne ord()
Exemple
Renvoie la valeur ASCII de "h" :
<?php echo ord("h")."<br>"; echo ord("hello")."<br>"; ?>
Définition et utilisation
La fonction ord() renvoie la valeur ASCII du premier caractère de la valeur de la chaîne.
Syntaxe
ord(string)
Paramètres Description
chaîne Obligatoire. Chaîne à partir de laquelle obtenir la valeur ASCII.
Détails techniques
Valeur de retour : Renvoie la valeur ASCII sous forme entière.
Version PHP : 4+
Application de la fonction ord() La fonction
ord() est utilisée pour renvoyer la valeur ASCII d'un caractère. L'utilisation la plus basique est d'obtenir l'ASCII. La valeur ord de a (« a ») renvoie 97, mais dans le développement réel, elle est le plus souvent utilisée dans la fonction d'interception de caractères pour obtenir le nombre décimal du codage des bits haut et bas des caractères chinois, par exemple pour les caractères chinois courants. fonctions d'interception, veuillez consulter les forums PHPWind ou Discuz! Le principe de la fonction substrs() ou cutstr() dans le code source est d'obtenir la valeur du code ASCII du caractère via la fonction ord(). est supérieur à 127, il est représenté comme la moitié du caractère chinois, puis la seconde moitié est obtenue et combinée en un caractère complet, combiné avec un codage de caractères tel que GBK ou UTF-8, etc.
Prenons l'encodage GBK comme exemple et utilisez la fonction ord() pour juger les caractères chinois et renvoyer la valeur ASCII de chaque caractère chinois. Le code est le suivant
$string = "不要迷恋哥"; $length = strlen($string); var_dump($string);//原始中文 var_dump($length);//长度 $result = array(); for($i=0;$i<$length;$i++){ if(ord($string[$i])>127){ $result[] = $string[$i].' '.$string[++$i]; } } var_dump($result);
Description du code
1. , définissez une variable $string, sa valeur Pour la chaîne
2, récupérez la longueur de la variable (nombre d'octets)
3, imprimez la variable et la longueur de la variable
4, récupérez chaque octet valeur de la variable via la boucle for, et mettez les deux caractères d'un caractère chinois. Les octets sont affichés séparés par des espaces.
Le résultat est comme indiqué ci-dessous
Illustration : "Ne soyez pas obsédé par mon frère" est composé de 5 caractères chinois, un total de 10 octets (un caractère chinois est 2 octets), imprimer chacun séparément Les octets ne peuvent pas être affichés normalement comme indiqué dans l'image ci-dessus
La valeur initiale reste inchangée et la partie boucle for du code est modifiée pour afficher la valeur ASCII de chaque octet
$result = array(); for($i=0;$i<$length;$i++){ if(ord($string[$i])>127){ $result[] = ord($string[$i]).' '.ord($string[++$i]); } } var_dump($result);
Le code ci-dessus utilise la fonction ord() pour imprimer la valeur ASCII de chaque caractère. Les résultats sont les suivants
Après conversion via ord(). fonction, la valeur ASCII de chaque caractère peut être visualisée normalement.
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!