12

可能重复:
如何获取 utf-8 字符串中给定字符的代码点编号?

我在 javascript 中有一个示例代码:

var str = "HELLO WORLD";
var n = str.charCodeAt(0);

这返回 72

如何在 PHP 中完成这项工作?

4

4 回答 4

12

ASCII

这将有助于:

//Code to Character
echo chr(65);

//Character to Code
echo ord('A');

统一码

但由于这些函数适用于 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('ب');
于 2012-10-20T15:07:20.107 回答
6

相当于上面的将是

$str = "HELLO WORLD";
$n = ord($str[0]);
于 2012-10-20T15:04:20.617 回答
6

在此处的文档中查看此贡献的注释:

http://www.php.net/manual/en/function.ord.php

有一个函数返回 UTF-8 值,这是我假设你想要的。

于 2012-10-20T15:11:31.597 回答
1

要了解 unicode,您应该尝试这个(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;
} 
于 2012-10-20T15:10:11.283 回答