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

黄舟
Freigeben: 2023-03-06 07:34:02
Original
1098 Leute haben es durchsucht

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;"); 
?>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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]);
Nach dem Login kopieren

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)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!