UTF8 mb_strpos问题

时间:2015-05-05 08:42:21

标签: php utf-8 strpos

我正面临着一个奇怪的问题我试图在UTF-8大海捞针中找到一个UTF-8针,它只是不想正常工作。这是一个例子。

header('Content-Type: text/html; charset=utf-8');
mb_internal_encoding("UTF-8");

vardump(mb_strpos('Příkon', 'Příkon '));

返回false

header('Content-Type: text/html; charset=utf-8');
mb_internal_encoding("UTF-8");

vardump(mb_strpos('Příkon', 'Příkon'));

这会返回0(成功)

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

嗯,是的。错误是正确的。您在调用mb_strpos(string $haystack , string $needle)时刚刚交换了$haystack$needle,因此'Příkon '中找不到'Příkon'。你的电话应该是

mb_strpos('Příkon ', 'Příkon');