PHP实现多关键字加亮功能

 更新时间:2016年10月21日 15:54:20   作者:Hongten  
关键字加亮可以更好的帮助阅读,本篇文章主要PHP实现多关键字加亮功能,具有一定的参考价值,有需要的可以看一下。

本文主要介绍的是PHP实现多关键字加亮功能,可以实现在搜索的时候进行高亮提醒,具体实现代码如下:

项目结构:

搜索结果:  高亮显示

项目所需数据库结构:

实现代码:

conn.php

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

searchAndDisplayWithColor.php

<?php 
include 'conn.php'; 
?> 
<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['keyWord']){ 
  //用空格符把关键字分割开 
  $key=explode(' ', $_GET[keyWord]); 
  $sql="select * from message where title like '$key[0]' or title like '$key[1]' or content like '$key[0]' or content like '%$key[1]%'"; 
  $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> 
   <div align="right"><a href="preEdit.php?id=<?=$row[id]?>">编辑</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a 
    href="delete.php?id=<?=$row[id]?>">删除</a></div> 
   </td> 
  </tr> 
  <tr bgColor="#ffffff"> 
   <td>内容:<?=$row[content]?></td> 
  </tr> 
  <tr bgColor="#ffffff"> 
   <td> 
   <div align="right">发表日期:<?=$row[lastdate]?></div> 
   </td> 
  </tr> 
  <?php } 
  } 
  ?> 
 </table> 

说明:在这个小程序中,有一点不足之处在于,只能同时搜索两个关键字,并且中间用空格" "隔开,如果只是搜索一个关键字,如:"大"

显示的时候会出现乱码 ……^|_|^,这是由于下面代码的结果:

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

希望本文所述对你有所帮助,PHP实现多关键字加亮功能内容就给大家介绍到这里了。希望大家继续关注我们的网站!想要学习php可以继续关注本站。

相关文章

  • ThinkPHP中session函数详解

    ThinkPHP中session函数详解

    这篇文章主要为大家详细介绍了ThinkPHP中session函数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • getJSON跨域SyntaxError问题分析

    getJSON跨域SyntaxError问题分析

    这篇文章主要介绍了getJSON跨域SyntaxError问题分析,需要的朋友可以参考下
    2014-08-08
  • 使用symfony命令创建项目的方法

    使用symfony命令创建项目的方法

    这篇文章主要介绍了使用symfony命令创建项目的方法,结合实例形式分析了Symfony命令的使用方法与项目创建的相关技巧,需要的朋友可以参考下
    2016-03-03
  • Zend Framework教程之分发器Zend_Controller_Dispatcher用法详解

    Zend Framework教程之分发器Zend_Controller_Dispatcher用法详解

    这篇文章主要介绍了Zend Framework教程之分发器Zend_Controller_Dispatcher用法,结合实例形式详细分析了分发器Zend_Controller_Dispatcher的结构,功能,使用技巧与相关注意事项,需要的朋友可以参考下
    2016-03-03
  • PHP常量DIRECTORY_SEPARATOR原理及用法解析

    PHP常量DIRECTORY_SEPARATOR原理及用法解析

    这篇文章主要介绍了PHP常量DIRECTORY_SEPARATOR原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Laravel 5.5 实现禁用用户注册示例

    Laravel 5.5 实现禁用用户注册示例

    今天小编就为大家分享一篇Laravel 5.5 实现禁用用户注册示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Thinkphp 3.2框架使用Redis的方法详解

    Thinkphp 3.2框架使用Redis的方法详解

    这篇文章主要介绍了Thinkphp 3.2框架使用Redis的方法,结合实例形式详细分析了thinkPHP3.2操作redis的常用方法、相关注意事项与问题解决方法,需要的朋友可以参考下
    2019-10-10
  • PHP图像裁剪缩略裁切类源码及使用方法

    PHP图像裁剪缩略裁切类源码及使用方法

    这篇文章主要介绍了PHP图像裁剪缩略裁切类源码及使用方法的相关资料,需要的朋友可以参考下
    2016-01-01
  • php操作mysqli(示例代码)

    php操作mysqli(示例代码)

    php操作mysqli的示例代码。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-10-10
  • PHP 微信扫码支付源代码(推荐)

    PHP 微信扫码支付源代码(推荐)

    本文给大家介绍php微信扫码支付的源代码,代码中包含四个文件createUrl.php、ArrayToXML.php、returnGoodsUrl.php、notifyUrl.php。具体详细代码大家参考下本文吧
    2016-11-11

最新评论