Возможный дубликат:
Как получить номер кодовой точки для заданного символа в строке utf-8?
У меня есть пример кода в javascript:
var str = "HELLO WORLD"; var n = str.charCodeAt(0);
Это возвращает 72
Как это сделать в PHP?
Эквивалентом приведенного выше будет
$str = "HELLO WORLD"; $n = ord($str[0]);
Отметьте эту записку в документах здесь:
http://www.php.net/manual/en/function.ord.php
Есть функция, которая возвращает значение UTF-8, которое, как я полагаю, вы хотите.
ASCII
Это поможет:
//Code to Character echo chr(65); //Character to Code echo ord('A');
Unicode
Но поскольку эти функции работают для ASCII, для Unicode:
function uniord($u) { $k = mb_convert_encoding($u, 'UCS-2LE', 'UTF-8'); $k1 = ord(substr($k, 0, 1)); $k2 = ord(substr($k, 1, 1)); return $k2 * 256 + $k1; } echo uniord('ب');
Чтобы быть в юникоде, вы должны попробовать это (http://us.php.net/manual/en/function.ord.php)
function uniord($u) { $k = mb_convert_encoding($u, 'UCS-2LE', 'UTF-8'); $k1 = ord(substr($k, 0, 1)); $k2 = ord(substr($k, 1, 1)); return $k2 * 256 + $k1; }