(PHP 4, PHP 5, PHP 7, PHP 8)
chr — Generar un string de un byte a partir de un número
Devuelve un chaîne de caractères de un solo carácter que contiene el carácter especificado al
interpretar codepoint
como un entier sin signo.
Esto puede ser utilizado para crear un chaîne de caractères de un solo carácter en una codificación de un byte como ASCII, ISO-8859 o Windows 1252, pasando la posición del carácter deseado en la tabla de correspondencia de la codificación. Sin embargo, es importante tener en cuenta que esta función no es consciente de ninguna codificación de chaîne de caractères, y en particular no puede ser transmitido un valor de punto de código Unicode para generar un chaîne de caractères en una codificación multibyte como UTF-8 o UTF-16.
Esta función complementa ord().
codepoint
Un entier entre 0 y 255;
Los valores fuera del rango válido (0..255) serán convertidos a valor positivo, y terminarán en 255, lo que es equivalente al siguiente algoritmo:
while ($bytevalue < 0) {
$bytevalue += 256;
}
$bytevalue %= 256;
Devuelve un chaîne de caractères de un solo carácter que contiene el byte especificado.
Versión | Descripción |
---|---|
7.4.0 |
Esta función ya no acepta silenciosamente los codepoint s
no soportados, y convierte estos valores a 0 .
|
Ejemplo #1 Ejemplo con chr()
<?php
// Supone que el string será utilizado como ASCII o una codificación
// compatible con este
$str = "The string ends in escape: ";
// Añade un carácter de escape al final del string $str
$str .= chr(27);
echo $str, PHP_EOL;
// Esto es a menudo más práctico, y realiza lo mismo
$str = sprintf("The string ends in escape: %c", 27);
?>
Ejemplo #2 Comportamiento de desbordamiento
<?php
echo chr(-159), chr(833), PHP_EOL;
?>
El resultado del ejemplo sería:
aA
Ejemplo #3 Construir un string UTF-8 a partir de bytes individuales
<?php
$str = chr(240) . chr(159) . chr(144) . chr(152);
echo $str, PHP_EOL;
?>
El resultado del ejemplo sería:
%c