0

如果有人搜索“TestING”,它仍应读作“testing”。我的网页搜索中包含一个 php 文件以阻止某些术语。但我必须为每个单词添加每个案例。有没有快速解决方法,所以情况无关紧要?

<?

$blocked=array('nude','nsfw','xrated');

?>
4

3 回答 3

1

另一种代替总是检查的strtolower方法是in_array使用这个函数。

function in_arrayi($needle, $haystack) {
    return in_array(strtolower($needle), array_map('strtolower', $haystack));
}

http://us2.php.net/manual/en/function.in-array.php#89256

于 2013-07-10T20:15:13.527 回答
0

您可以使用strtolower将每一个小写字母设为小写。

$var1 = "Hello";
$var2 = "hello";
if (strtolower($var1) == strtolower($var2)) {
    echo '$var1 is equal to $var2 in a case-insensitive string comparison';
}

或者您可以使用 strcasecmp。

$var1 = "Hello";
$var2 = "hello";
if (strcasecmp($var1, $var2) == 0) {
    echo '$var1 is equal to $var2 in a case-insensitive string comparison';
}
于 2013-07-10T20:13:27.060 回答
0

由于您使用的是 strstr,因此可以将其替换为 strstr 这是不区分大小写的版本

if(stristr($_GET[q],$term)==false)
于 2013-07-10T20:19:18.603 回答