我有一段代码可以在我的本地测试服务器上运行正常但在实时服务器上由于某种原因它没有。 实时服务器上的Php版本是5.1.6。
$subject = 'random words to check';
$terms = explode(' ', 'word1 word2 check');
$wordIndex = array_flip(preg_split('/\P{L}+/u', mb_strtolower($subject), -1, PREG_SPLIT_NO_EMPTY));
foreach ($terms as $term) {
if (isset($wordIndex[$term])) {
echo "match>".$term;
}
}
答案 0 :(得分:0)
首先使用一些基本的调试来发现每个系统上发生的事情
答案 1 :(得分:0)
您可以尝试用
替换preg_split$wordIndex = array_flip(str_word_count(mb_strtolower($subject), 2));
如果你正在使用多字节字符串,你可能还需要str_word_count的额外第3个参数