0

誰かが「TestING」を検索しても、「testing」と読む必要があります。特定の用語をブロックするために、Web ページ検索に 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 を使用しているため、大文字と小文字を区別しないバージョンであるstristrに置き換えることができます

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