0

これはサイト検索スクリプト用です。str_ireplace を使用すると、検索結果の大文字と小文字が変更されます。たとえば、クエリ文字列が「検索文字列」で、「検索文字列」を含むレコードが見つかった場合、後者は大文字が失われます。これを回避する方法はありますか?

検索結果の強調表示を組み込む必要があります。

問題は、文字列が見つからないか、強調表示されていないことです。これを実現するために str_ireplace を使用できます。しかし、これは大文字を失います。私が望むのは、大文字化もそのままにしておくことです。

4

3 に答える 3

1

preg_replaceを使用できます。

$haystack = 'Some text here.';
$str = preg_replace( "#(.*)(text)(.*)#i", '\1<b>\2</b>\3', $haystack );
于 2012-07-12T21:54:10.843 に答える
0

代わりに、検索にはstriposを使用してください。

if ( stripos( $haystack, $needle ) !== false )
    echo $needle, ' found!';
于 2012-07-12T21:42:56.923 に答える
0

str_ireplace の代わりに str_replace を使用してください。

于 2012-07-12T21:44:12.133 に答える