我有一个与MongoDB的文本搜索,我使用PHP。
除了德语中的特殊字符外,它可以正常工作。例如"Törn"这个词。
所以字符"Ö", "Ü", "Ä", "ß"找不到,我不知道为什么。
这是将为搜索生成的json:
{"text":"waypoints","search":"T'u00f6rn","language":"de"}
I tried
utf8_encode(utf8_decode($searched));
和
mb_convert_encoding($searched, "UTF-8");
到目前为止,但它们都没有改变我得到的结果。在$searched
中,将保存搜索字符串,在本例中为"Törn"。
这是我的textsearch命令:
$cursor = $this->db->command(array(
"text" => "waypoints",
'search' => $searched,
'language' => 'de'
));
如何正确处理这些字符?
我删除了命令的'language' => 'de'
部分,现在它正在工作!
但是我不能给出一个原因,为什么语言参数chdash这个查询。