这是一个站点搜索脚本。如果我使用 str_ireplace,这将改变搜索结果的大小写。例如,如果查询字符串是“搜索字符串”,并且找到包含“搜索字符串”的记录,则后者将丢失其大小写。有什么办法吗?
我需要为搜索结果添加突出显示。
问题是找不到字符串或将其突出显示。我可以使用 str_ireplace 来完成此操作。但这将失去大写。我想要的是保持大写不变。
这是一个站点搜索脚本。如果我使用 str_ireplace,这将改变搜索结果的大小写。例如,如果查询字符串是“搜索字符串”,并且找到包含“搜索字符串”的记录,则后者将丢失其大小写。有什么办法吗?
我需要为搜索结果添加突出显示。
问题是找不到字符串或将其突出显示。我可以使用 str_ireplace 来完成此操作。但这将失去大写。我想要的是保持大写不变。
您可以使用preg_replace。
$haystack = 'Some text here.';
$str = preg_replace( "#(.*)(text)(.*)#i", '\1<b>\2</b>\3', $haystack );
改为使用stripos进行搜索。
if ( stripos( $haystack, $needle ) !== false )
echo $needle, ' found!';
只需使用 str_replace 而不是 str_ireplace。