【问题标题】:Highlighting Keyword in search results在搜索结果中突出显示关键字
【发布时间】:2012-02-16 15:30:21
【问题描述】:

如何在搜索结果中突出显示关键字?

这是我的代码示例:

<?php
$mysql = new mysqli($host,$username,$password,$database);

$keyword = 'racing';
$query = $mysql->query("SELECT * FROM products WHERE title LIKE '%$keyword%' OR description LIKE '%$keyword%'");

while($result = $query->fetch_object())
{
    echo '<p>';
    echo $result->title.'<br />';
    echo substr($result->description,'0','256');
    echo '</p>';
}
?>

在这段代码中,关键字是racing,所以我想突出显示搜索结果中的所有racing

【问题讨论】:

标签: php mysql replace


【解决方案1】:

只需将您的关键字替换为包含该关键字的样式 &lt;span&gt;

$result->title = preg_replace("/($keyword)/i",'<span class="highlight">$1</span>', $result->title);

$keyword = "racing" 和文字“你知道赛车吗?太棒了。”,$result-&gt;title 将是

You know &lt;span class="highlight"&gt;racing&lt;/span&gt;? It's awesome.

然后您只需使用 CSS 设置高亮类的样式,例如

.highlight { background-color: #ffa; }  

.....

【讨论】:

    猜你喜欢
    • 2014-03-07
    • 2010-09-16
    • 1970-01-01
    • 2013-08-13
    • 2010-12-10
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 2014-07-25
    相关资源
    最近更新 更多