在php中为同一字符显示不同的unicode值

在php中为同一字符显示不同的unicode值,php,unicode,utf-8,special-characters,utf,Php,Unicode,Utf 8,Special Characters,Utf,我正在使用一个函数来确定不同孟加拉语字符的十进制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));

我正在使用一个函数来确定不同孟加拉语字符的十进制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;
                }
它适用于除
哪个unicode值以十六进制表示为09DC,以十进制表示为2524。当我从console/textarea字段中获取此字符时,此功能非常有效。例如:

                $data = $_POST['data'];
                echo uniord($data);
                $data_one = 'ড়';
                echo uniord($data_one);
但是当使用变量中的此字符时,显示不同的unicode值。例如:

                $data_one = 'ড়';
                echo uniord($data_one);
这提供了unicode值09A1(十六进制)或2465(十进制),这是另一个类似的字,但不是我想要的字符值

如何解决这个问题。谢谢

的正则分解为U+09A1 U+09BC。听起来您的文本编辑器正在使用保存文本。查看是否可以更改设置,以便能够使用合成的标准格式保存,或者尝试使用其他文本编辑器

或者使用转义码:
“\xe0\xa7\x9c”

具有作为U+09A1 U+09BC的规范分解。听起来您的文本编辑器正在使用保存文本。查看是否可以更改设置,以便能够使用合成的标准格式保存,或者尝试使用其他文本编辑器

或者使用转义码:
“\xe0\xa7\x9c”