Как получить байтовые значения строки в PHP? Скажем, у меня есть строка в php, которая печатает в текстовый файл следующим образом: nÖ§9q1Fª £ Как я могу получить байтовые коды этого текстового файла, а не фанки символов ascii? Ответ 1 Используйте функцию ord http://ca.php.net/ord например. <?php $var = "nÖ§9q1Fª£ˆæÓ§Œ_»—Ló]j"; for($i = 0; $i < strlen($var); $i++) { echo ord($var[$i])."<br/>"; } ?> Ответ 2 Если вы хотите получить строку как массив целых кодов, есть приятный однострочный: unpack('C*', $string) Остерегайтесь, результирующий массив индексируется от 1, а не от 0! Ответ 3 Если вы говорите о шестнадцатеричном значении, это должно сделать для вас: $value = unpack('H*', "Stack"); echo $value[1]; Ссылка Ответ 4 Ord() делает трюк с ASCII-кодировкой. Если вы, однако, вмешиваетесь в многобайтовые строки (например, UTF-8), вам не повезло и нужно взломать его самостоятельно.
Ответ 1 Используйте функцию ord http://ca.php.net/ord например. <?php $var = "nÖ§9q1Fª£ˆæÓ§Œ_»—Ló]j"; for($i = 0; $i < strlen($var); $i++) { echo ord($var[$i])."<br/>"; } ?>
Ответ 2 Если вы хотите получить строку как массив целых кодов, есть приятный однострочный: unpack('C*', $string) Остерегайтесь, результирующий массив индексируется от 1, а не от 0!
Ответ 3 Если вы говорите о шестнадцатеричном значении, это должно сделать для вас: $value = unpack('H*', "Stack"); echo $value[1]; Ссылка
Ответ 4 Ord() делает трюк с ASCII-кодировкой. Если вы, однако, вмешиваетесь в многобайтовые строки (например, UTF-8), вам не повезло и нужно взломать его самостоятельно.