如何在php中获取字符串的波斯字符ascii码

如何在php中获取字符串的波斯字符ascii码,php,encoding,utf-8,ascii,farsi,Php,Encoding,Utf 8,Ascii,Farsi,我想在php中显示字符串的字符代码 <?php $Text = '{"text":"سلام"}'; for($i = 0;$i < strlen($Text);$i++){ echo mb_ord($Text[$i]),"<br>"; } ?> 但是它的输出是空的 您正在尝试获取unicode字符串的所有“字节”。您需要使用获取字符的实际长度 然后,您需要使用来获得正确的字符 $Text =

我想在php中显示字符串的字符代码

<?php
$Text = '{"text":"سلام"}';
for($i = 0;$i < strlen($Text);$i++){
    echo mb_ord($Text[$i]),"<br>";
}
?>

但是它的输出是空的

您正在尝试获取unicode字符串的所有“字节”。您需要使用获取字符的实际长度

然后,您需要使用来获得正确的字符

$Text = '{"text":"سلام"}';
for($i = 0; $i < mb_strlen($Text); $i++) {
    echo mb_ord(mb_substr($Text,$i, 1)), "<br>";
}
另请参见所有

您正在尝试获取unicode字符串的所有“字节”。您需要使用获取字符的实际长度

然后,您需要使用来获得正确的字符

$Text = '{"text":"سلام"}';
for($i = 0; $i < mb_strlen($Text); $i++) {
    echo mb_ord(mb_substr($Text,$i, 1)), "<br>";
}

另请参见所有

您正在逐字节迭代,这对多字节字符串不起作用。例如,看看……
mb_ord($Text[$i])
没有什么意义。
mb
函数用于正确处理多字节字符-但通过使用
$Text[$i]
访问字符串值,您不是在访问字符,而是在访问单个字节。如果只需要每个位置的单个字节值,则使用
ord
。如果您想从
mb_ord
中获取实际的unicode码点,那么请确保首先实际访问一个字符。(如果你不知道怎么做的话,研究一下它。)你是逐字节迭代,这对多字节字符串是行不通的。例如,看看……
mb_ord($Text[$i])
没有什么意义。
mb
函数用于正确处理多字节字符-但通过使用
$Text[$i]
访问字符串值,您不是在访问字符,而是在访问单个字节。如果只需要每个位置的单个字节值,则使用
ord
。如果您想从
mb_ord
中获取实际的unicode码点,那么请确保首先实际访问一个字符。(如果你不知道怎么做,就研究一下。)