Comment puis-je obtenir les valeurs d'octets d'une chaîne en PHP?
Question
Dire que j'ai une chaîne en php, qui imprime dans un fichier texte comme celui-ci:
£ nÖ§9q1Fª
Comment puis-je obtenir les codes d'octets de ce à mon fichier texte plutôt que les caractères ascii géniaux?
La solution
Utilisez la fonction ord
par exemple.
<?php
$var = "nÖ§9q1Fª£ˆæÓ§Œ_»—Ló]j";
for($i = 0; $i < strlen($var); $i++)
{
echo ord($var[$i])."<br/>";
}
?>
Autres conseils
Si vous souhaitez obtenir la chaîne comme un tableau de codes entiers, il y a une belle one-liner:
unpack('C*', $string)
Prenez garde, le tableau résultant est indexé de 1, pas de 0!
Ord()
le tour est joué avec un ASCII-charset. Si vous, cependant, mêlez chaînes multi-octets (comme UTF-8), vous êtes hors de la chance, et ont besoin de pirater vous-même.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow