(PHP 4, PHP 5, PHP 7, PHP 8)
chr — Générer une chaîne d'un octet à partir d'un nombre
$codepoint
): string
Retourne une chaîne de caractères d'un seul caractère contenant le caractère spécifié en
interprétant codepoint
comme un entier non signé.
Ceci peut être utilisé pour créer une chaîne de caractères d'un seul caractère dans un encodage sur un octet tel que ASCII, ISO-8859, ou Windows 1252, en passant la position du caractère désiré dans la table de correspondance de l'encodage. Cependant, il est à noter que cette fonction n'est pas conscient d'aucun encodage de chaîne de caractères, et en particulier ne peut pas être transmit une valeur de point de code Unicode pour générer une chaîne de caractères dans un encodage multioctet tel que UTF-8 ou UTF-16.
Cette fonction complète ord().
codepoint
Un entier entre 0 et 255;
Les valeurs en dehors de l'intervalle valide (0..255) seront converties en valeur positive, et se termineront à 255, ce qui est l'équivalent de l'algorithme suivant :
while ($bytevalue < 0) {
$bytevalue += 256;
}
$bytevalue %= 256;
Retourne une chaîne de caractères d'un seul caractère contenant l'octet spécifié.
Version | Description |
---|---|
7.4.0 |
Cette fonction n'accepte plus silencieusement les codepoint s
non supporté, et casts ces valeurs à 0 .
|
Exemple #1 Exemple avec chr()
<?php
// Suppose que la chaîne sera utilisé en tant que ASCII ou un encodage
// compatible avec celui-ci
$str = "The string ends in escape: ";
// Ajoute un caractère d'échappement à la fin de la chaîne $str
$str .= chr(27);
// Ceci est souvent plus pratique, et réalise la même chose
$str = sprintf("The string ends in escape: %c", 27);
?>
Exemple #2 Comportement de débordement
<?php
echo chr(-159), chr(833), PHP_EOL;
?>
L'exemple ci-dessus va afficher :
aA
Exemple #3 Construite une chaîne UTF-8 à partir d'octet individuel
<?php
$str = chr(240) . chr(159) . chr(144) . chr(152);
echo $str;
?>
L'exemple ci-dessus va afficher :
%c