【发布时间】:2014-07-12 05:32:55
【问题描述】:
当用户键入当前关键字时,我试图将任何关键字加粗。
我有这段代码,它工作正常。
for($k=$no_words; $k>0 ;$k--) {
$w=trim($search_array[$k-1]);
if($w!='')
{
$result[$i]['title'] = preg_replace('/(' . preg_quote($search_array[$k-1], '/') . ')/siU', '<b>\\1</b>', $result[$i]['title']);
$result[$i]['description'] = preg_replace('/(' . preg_quote($search_array[$k-1], '/') . ')/siU', '<b>\\1</b>', $result[$i]['description']);
}
}
我的问题如下:
我有这个关键字:这是我的关键字
当我输入:“这是我的关键字”时,我会得到这样的结果:“这是我的关键字”
但是当我输入:“这是关键字”时,我得到的结果是:“这是我的关键字”,结果中的单词没有加粗。
我做错了什么?
【问题讨论】:
-
字符串“这是我的关键字”中没有子字符串“这是关键字”
-
我需要在这段代码中做什么?
-
$search_array中有什么内容? -
$search_array = explode('%20', $search); $no_words = count($search_array);
-
$search中有什么内容?