Pregunta

Digamos que tiene una cadena en PHP, que imprime a un archivo de texto como este:

nÖ§9q1Fª £

¿Cómo consigo los códigos de bytes de esto a mi archivo de texto en lugar de los caracteres ASCII cobardes?

¿Fue útil?

Solución

Utilice la función ord

http://ca.php.net/ord

por ejemplo.

<?php
$var = "nÖ§9q1Fª£ˆæÓ§Œ_»—Ló]j";

for($i = 0; $i < strlen($var); $i++)
{
   echo ord($var[$i])."<br/>";
}
?>

Otros consejos

Si desea obtener la cadena como una matriz de códigos enteros, hay un bonito de una sola línea:

unpack('C*', $string)

guárdese, la matriz resultante es indexado de 1, no desde 0!

Si usted está hablando sobre el valor hexadecimal, esto debería hacer por usted:

$value = unpack('H*', "Stack");
echo $value[1];

Referencia

Ord() hace el truco con un juego de caracteres ASCII. Si, sin embargo, meterse con cadenas multibyte (como UTF-8), que está de suerte, y la necesidad de entrar ilegalmente en él mismo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top