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语法(5)
Oct 09 PHP
PHPWind 发帖回帖Api PHP版打包下载
Feb 08 PHP
PHP和.net中des加解密的实现方法
Feb 27 PHP
使用PHP函数scandir排除特定目录
Jun 12 PHP
PHP Warning: Module 'modulename' already loaded in问题解决办法
Mar 16 PHP
PHP实现过滤掉非汉字字符只保留中文字符
Jun 04 PHP
php实现网站顶踩功能的完整前端代码
Jul 19 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
PHP获取对象属性的三种方法实例分析
Jan 03 PHP
PHP使用PDO操作sqlite数据库应用案例
Mar 07 PHP
laravel框架语言包拓展实现方法分析
Nov 22 PHP
Laravel中GraphQL接口请求频率实战记录
Sep 01 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调用三种数据库的方法(3)
2006/10/09 PHP
Linux系统中设置多版本PHP共存配合Nginx服务器使用
2015/12/21 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
javascript一些不错的函数脚本代码
2008/09/10 Javascript
服务器端的JavaScript脚本 Node.js 使用入门
2012/03/07 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
2013/10/21 Javascript
轻松创建nodejs服务器(7):阻塞操作的实现
2014/12/18 NodeJs
javascript实现动态导入js与css等静态资源文件的方法
2015/07/25 Javascript
JS实现选项卡实例详解
2015/11/17 Javascript
JavaScript常用数组算法小结
2016/02/13 Javascript
ionic隐藏tabs的方法
2016/08/29 Javascript
javascript事件捕获机制【深入分析IE和DOM中的事件模型】
2016/12/15 Javascript
Extjs让combobox写起来简洁又漂亮
2017/01/05 Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
2018/05/16 Javascript
手淘flexible.js框架使用和源代码讲解小结
2018/10/15 Javascript
vue组件中watch props根据v-if动态判断并挂载DOM的问题
2019/05/12 Javascript
微信小程序 扭蛋抽奖机css3动画实现详解
2019/07/19 Javascript
[02:48]DOTA2超级联赛专访海涛:你们的选择没有错
2013/06/07 DOTA
python距离测量的方法
2018/03/06 Python
Python实现图片转字符画的代码实例
2019/02/22 Python
Python facenet进行人脸识别测试过程解析
2019/08/16 Python
利用Python的turtle库绘制玫瑰教程
2019/11/23 Python
Python内存映射文件读写方式
2020/04/24 Python
Python Matplotlib简易教程(小白教程)
2020/07/28 Python
CSS3制作缩略图的详细过程
2016/07/08 HTML / CSS
Europcar西班牙:全球汽车租赁领域的领导者
2018/09/17 全球购物
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
技术总监个人的自我评价范文
2013/12/18 职场文书
六月份红领巾广播稿
2014/02/03 职场文书
工作失误检讨书(3篇)
2014/10/11 职场文书
2014年人事行政工作总结
2014/12/03 职场文书
运动会宣传语
2015/07/13 职场文书
Angular性能优化之第三方组件和懒加载技术
2021/05/10 Javascript
redis内存空间效率问题的深入探究
2021/05/17 Redis
python关于集合的知识案例详解
2021/05/30 Python
Python Django模型详解
2021/10/05 Python