Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Einführung und Beispielcode zur Implementierung der Funktion zur Hervorhebung mehrerer Schlüsselwörter in PHP

Detaillierte Einführung und Beispielcode zur Implementierung der Funktion zur Hervorhebung mehrerer Schlüsselwörter in PHP

黄舟
黄舟Original
2017-02-27 09:51:381156Durchsuche

In diesem Artikel wird hauptsächlich die Funktion zum Hervorheben mehrerer Schlüsselwörter in PHP vorgestellt, die während der Suche hervorgehoben werden kann. Der spezifische Implementierungscode lautet wie folgt:

Projektstruktur:

Detaillierte Einführung und Beispielcode zur Implementierung der Funktion zur Hervorhebung mehrerer Schlüsselwörter in PHP

Suchergebnisse: Hervorheben

Detaillierte Einführung und Beispielcode zur Implementierung der Funktion zur Hervorhebung mehrerer Schlüsselwörter in PHP

Für das Projekt erforderliche Datenbankstruktur:

Detaillierte Einführung und Beispielcode zur Implementierung der Funktion zur Hervorhebung mehrerer Schlüsselwörter in PHP

Implementierungscode:

conn.php

<?php 
$conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误"); 
mysql_select_db("form", $conn); 
mysql_query("set names &#39;gbk&#39;"); 
?>

searchAndDisplayWithColor.php

<?php 
include &#39;conn.php&#39;; 
?> 
<table width=500 align="center"> 
  <form action="" method="get"> 
  <tr> 
   <td>关键字:<input type="text" name="keyWord" /> 
   <input type="submit" value="搜索" /></td> 
  </tr> 
  </form> 
 </table> 
 
 <table width=500 border="0" align="center" cellpadding="5" 
  cellspacing="1" bgcolor="#add3ef"> 
  <?php 
  //关键字不为空的时候才执行相关搜索 
  if($_GET[&#39;keyWord&#39;]){ 
  //用空格符把关键字分割开 
  $key=explode(&#39; &#39;, $_GET[keyWord]); 
  $sql="select * from message where title like &#39;$key[0]&#39; or title like &#39;$key[1]&#39; or content like &#39;$key[0]&#39; or content like &#39;%$key[1]%&#39;"; 
  $query=mysql_query($sql); 
  while ($row=mysql_fetch_array($query)){ 
   //替换关键字,并且把关键字高亮显示 
   $row[title]=preg_replace("/$key[0]/i", "<font color=red><b>$key[0]</b></font>", $row[title]); 
   $row[title]=preg_replace("/$key[0]/i", "<font color=red><b>$key[1]</b></font>", $row[title]); 
   $row[content]=preg_replace("/$key[0]/i", "<font color=red><b>$key[0]</b></font>", $row[content]); 
   $row[content]=preg_replace("/$key[1]/i", "<font color=red><b>$key[1]</b></font>", $row[content]); 
   ?> 
 
  <tr bgcolor="#eff3ff"> 
   <td>标题:<font color="black"><?=$row[title]?></font> 用户:<font color="black"><?=$row[user] ?></font> 
   <p align="right"><a href="preEdit.php?id=<?=$row[id]?>">编辑</a>  |  <a 
    href="delete.php?id=<?=$row[id]?>">删除</a></p> 
   </td> 
  </tr> 
  <tr bgColor="#ffffff"> 
   <td>内容:<?=$row[content]?></td> 
  </tr> 
  <tr bgColor="#ffffff"> 
   <td> 
   <p align="right">发表日期:<?=$row[lastdate]?></p> 
   </td> 
  </tr> 
  <?php } 
  } 
  ?> 
 </table>

Anleitung: In diesem kleinen Programm gibt es einen Nachteil dass Sie nur nach zwei Schlüsselwörtern gleichzeitig suchen können, getrennt durch ein Leerzeichen „ “. Wenn Sie nur nach einem Schlüsselwort suchen, z. B. „groß“
, werden bei der Anzeige verstümmelte Zeichen angezeigt ... ^|_ |^, Dies ist auf das Ergebnis des folgenden Codes zurückzuführen:

//用空格符把关键字分割开 
 $key=explode(&#39; &#39;, $_GET[keyWord]);

Das Obige ist die detaillierte Einführung und der Beispielcodeinhalt der Funktion zur Hervorhebung mehrerer Schlüsselwörter in PHP Weitere verwandte Informationen finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn