Maison  >  Article  >  développement back-end  >  PHP renvoie la valeur ASCII du premier caractère d'une fonction de chaîne ord()

PHP renvoie la valeur ASCII du premier caractère d'une fonction de chaîne ord()

黄舟
黄舟original
2018-05-19 11:54:423331parcourir

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].&#39; &#39;.$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

PHP renvoie la valeur ASCII du premier caractère dune fonction de chaîne ord()

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]).&#39; &#39;.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

PHP renvoie la valeur ASCII du premier caractère dune fonction de chaîne ord()

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!

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