网站地图

php实现javascipt的charCodeAt方法

创建时间:2013-12-13 18:41:16最后修改:2013-12-13 18:41:16

javascript的charCodeAt()方法与charAt()方法类似,但它并不像charAt()方法一样返回指定位置上的字符本身,而是返回该字符在Unicode字符集中的编码值。
charCodeAt(int index)方法是一个能够用来检索特定索引下的字符的Unicode字符集中的编码值的String实例的方法.
charCodeAt()方法返回指定索引位置的字符的Unicode字符集中的编码值。索引范围为0~length()-1.
如: str.charCodeAt(0)检索str中的第一个字符的Unicode字符集中的编码值,str.charCodeAt(str.length()-1)检索最后一个字符的Unicode字符集中的编码值.

用PHP可以实现javascript的charCodeAt方法,代码如下:

function charCodeAt($str, $index)
{
    $char = mb_substr($str, $index, 1, 'UTF-8');

    if (mb_check_encoding($char, 'UTF-8'))
    {
        $ret = mb_convert_encoding($char, 'UTF-32BE', 'UTF-8');
        return hexdec(bin2hex($ret));
    }
    else
    {
        return null;
    }
}
使用示例:
$str = "hellow world.";
echo charCodeAt($str, 0);