这就是我想要实现的目标:
تلر
这就是问题:
$a = "ت";
$l = "ﻝ";
$z = "ر";
$word = $a.$l.$z;
echo $word;
印刷:
تلر
尽管:
echo "تلر";
印刷:
تلر
实际上没有空格,但是如果您尝试此代码(请记住允许 utf-8),您会看到字母不会组合。它在字母直接组合时起作用。但是当我一一结合时,就像:$a.$b.......他们不会结合。
有什么想法可以解决这个问题吗?
你的第二个单字符是 U+FEDD 而第二个字符是 U+0644 تلر。使用正确的字符,它可以工作:
$a = "ت";
$l = "ل";
$z = "ر";
var_dump("تلر" === $a.$l.$z);
尝试使用这种编码而不是 utf-8
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256 "/>
编辑:
最流行的阿拉伯语编码是:
Windows-1256, ISO 8859-6, and UTF-8.
编辑:因为它会工作,你必须将你的编辑器也设置为编码windows-1256,如果你从数据库中获取字符串,你必须将数据库的编码设置为windows-1256并且应该工作