if (in_array($entry, array('Söme string', 'other-string')))
这适用于
other-string
,但不是为了
Söme string
$entry
是
Sme字符串
在数据库中,比较失败,即使它应该是相同的字符串。
我也试过了
strcmp
===
和
==
utf8_encode
在比较之前,但那没什么作用。
数据库使用UTF-8,我使用drupalapi函数获取数据,我的php文件也是UTF-8编码的。如果我打印
$项
和
Sme字符串
对于输出HTML,它们是不可区分的。
更新
谢谢你的帮助。看来
var_dump()的输出(使用print函数,取自生成的html源):
$entry: string(14) "Söme string"
"Söme string": string(18) "Söme string"
更新2
"Some string"
下面是
var_dump(bin2hex($entry));
var_dump(bin2hex('Some string'));
$entry: string(24) "536f6d65c2a0737472696e67"
"Some string": string(32) "536f6d65266e6273703b737472696e67"