PHP给文字内容中的关键字进行套红处理


Posted in PHP onApril 12, 2016

有些时候我们在显示一篇文章的时候,可能需要把某些关键字进行套红,高亮显示,以便我们能快速的查找和定位这些关键字,下面让我们看看具体实现的代码。

/**
  * 关键字套红方法
  * 
  * @access public
  * @param array $options 参数数组
  *  <li> $info_arr  array  内容</li>
  *  <li> $search_arr array  关键词数组 </li>
  * @return int or array
  */
  function set_arr_keyword_red($info_arr, $search_arr)
 {
  foreach ($search_arr as $search_str)
  {
   foreach ($info_arr as $key => $info)
   {
    if(in_array($key,array('item_title','keywords', 'photo_title', 'photo_site','content',)))
    {
     $info = strip_tags($info);
     $info = str_replace(' ', '', $info);
     $q_str_pos = stripos($info, $search_str);
     if (false!==$q_str_pos)
     {
      $info = csubstr($info, $q_str_pos+150);
      $temp = csubstr($info,$q_str_pos-150);
      $info = substr($info, strlen($temp), 300);
      $info = preg_replace("/{$search_str}/i", "<font color='red'>{$search_str}</font>", $info);
 
      if($info_arr['match_key']=='')
      $info_arr['match_key'] = $key;
     }
     else
     {
      $info = csubstr($info,300);
     }
    }
    $info_arr[$key] = $info;
   }
  }
  return $info_arr;
 }
 
$str = 'woloveu小君';
$info_arr = array('photo_title' => 'womejiojd我们都围殴防静低屁啊小君鸡冻啊泡脚盆大');
$search_arr = array('小君');
$ret = set_arr_keyword_red($info_arr, $search_arr);
dump($ret );
PHP 相关文章推荐
用PHP制作静态网站的模板框架(三)
Oct 09 PHP
关于文本留言本的分页代码
Oct 09 PHP
php下HTTP Response中的Chunked编码实现方法
Nov 19 PHP
发一个php简单的伪原创程序,配合商城采集用的
Oct 12 PHP
初品cakephp 入门基础
Feb 16 PHP
通过PHP current函数获取未知字符键名数组第一个元素的值
Jun 24 PHP
Yii框架获取当前controlle和action对应id的方法
Dec 03 PHP
PHP 7的一些引人注目的新特性简单介绍
Nov 08 PHP
PHP+sqlite数据库操作示例(创建/打开/插入/检索)
May 26 PHP
基于Laravel5.4实现多字段登录功能方法示例
Aug 11 PHP
Laravel 创建指定表 migrate的例子
Oct 09 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
Mar 09 PHP
PHP实现的通过参数生成MYSQL语句类完整实例
Apr 11 #PHP
PHP实现的浏览器检查类
Apr 11 #PHP
PHP模板引擎Smarty内建函数section,sectionelse用法详解
Apr 11 #PHP
PHP模板引擎Smarty内建函数详解
Apr 11 #PHP
PHP模板引擎Smarty内置变量调解器用法详解
Apr 11 #PHP
PHP模板引擎Smarty自定义变量调解器用法
Apr 11 #PHP
PHP中如何防止外部恶意提交调用ajax接口
Apr 11 #PHP
You might like
php 禁止页面缓存输出
2009/01/07 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
2015/02/16 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
我整理的PHP 7.0主要新特性
2016/01/07 PHP
php 生成签名及验证签名详解
2016/10/26 PHP
php+redis在实际项目中HTTP 500: Internal Server Error故障排除
2017/02/05 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
Javascript-Mozilla和IE中的一个函数直接量的问题分析
2007/08/12 Javascript
关于锚点跳转及jQuery下相关操作与插件
2012/10/01 Javascript
input输入框的自动匹配(原生代码)
2013/03/19 Javascript
JavaScript var声明变量背后的原理示例解析
2013/10/12 Javascript
JS保留两位小数 四舍五入函数的小例子
2013/11/20 Javascript
让JavaScript的Alert弹出框失效的方法禁止弹出警告框
2014/09/03 Javascript
JavaScript Math.floor方法(对数值向下取整)
2015/01/09 Javascript
原生js编写2048小游戏
2017/03/17 Javascript
原生js实现密码输入框值的显示隐藏
2017/07/17 Javascript
JavaScript实现简单计算器功能
2019/12/19 Javascript
解决await在forEach中不起作用的问题
2021/02/25 Javascript
python中对list去重的多种方法
2014/09/18 Python
python机器学习实战之树回归详解
2017/12/20 Python
解决nohup重定向python输出到文件不成功的问题
2018/05/11 Python
pytorch 把MNIST数据集转换成图片和txt的方法
2018/05/20 Python
解决Pyinstaller 打包exe文件 取消dos窗口(黑框框)的问题
2019/06/21 Python
Python3内置模块之base64编解码方法详解
2019/07/13 Python
在django中实现页面倒数几秒后自动跳转的例子
2019/08/16 Python
Django框架教程之中间件MiddleWare浅析
2019/12/29 Python
Python调用百度OCR实现图片文字识别的示例代码
2020/07/17 Python
使用py-spy解决scrapy卡死的问题方法
2020/09/29 Python
VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
2021/03/02 Python
伦敦新晋轻奢耳饰潮牌:Tada & Toy
2020/05/25 全球购物
电子信息专业学生自荐信
2013/11/09 职场文书
最新茶叶店创业计划书
2014/01/14 职场文书
售后服务承诺书怎么写
2014/05/21 职场文书
优秀团员事迹材料1000字
2014/08/20 职场文书
运动会广播稿50字-100字
2014/10/11 职场文书
机关干部纪律作风整顿心得体会
2016/01/23 职场文书