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操作SVN版本服务器类代码
Nov 27 PHP
Ping服务的php实现方法,让网站快速被收录
Feb 04 PHP
php错误级别的设置方法
Jun 17 PHP
PHP实现变色验证码实例
Jan 06 PHP
Drupal7中常用的数据库操作实例
Mar 02 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
Jul 12 PHP
浅谈php函数serialize()与unserialize()的使用方法
Aug 19 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
Oct 10 PHP
yii2中的rules 自定义验证规则详解
Apr 19 PHP
Smarty3配置及入门语法
Feb 22 PHP
Laravel程序架构设计思路之使用动作类
Jun 07 PHP
php实现微信公众号创建自定义菜单功能的实例代码
Jun 11 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 获取远程文件内容的函数代码
2010/03/24 PHP
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
2014/09/27 PHP
PHP常用技术文之文件操作和目录操作总结
2014/09/27 PHP
php中mkdir()函数的权限问题分析
2016/09/24 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
checkbox 复选框不能为空
2009/07/11 Javascript
javascript 哈希表(hashtable)的简单实现
2010/01/20 Javascript
JavaScript的document对象和window对象详解
2010/12/30 Javascript
我的javascript 函数链之演变
2011/04/07 Javascript
原生JS实现加入收藏夹的代码
2013/10/24 Javascript
JS 去除Array中的null值示例代码
2013/11/20 Javascript
javascript闭包传参和事件的循环绑定示例探讨
2014/04/17 Javascript
angularJS 中$attrs方法使用指南
2015/02/09 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
JS组件Bootstrap按钮组与下拉按钮详解
2016/05/10 Javascript
javascript url几种编码方式详解
2016/06/06 Javascript
JS获取短信验证码倒计时的实现代码
2017/05/22 Javascript
vue.js实现只能输入数字的输入框
2019/10/19 Javascript
Ajax获取node服务器数据的完整步骤
2020/09/20 Javascript
[54:09]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
django 修改server端口号的方法
2018/05/14 Python
Python基于多线程操作数据库相关问题分析
2018/07/11 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
2018/09/25 Python
Python中staticmethod和classmethod的作用与区别
2018/10/11 Python
浅谈python在提示符下使用open打开文件失败的原因及解决方法
2018/11/30 Python
Python 学习教程之networkx
2019/04/15 Python
python与C、C++混编的四种方式(小结)
2019/07/15 Python
python解释器spython使用及原理解析
2019/08/24 Python
Python OpenCV读取显示视频的方法示例
2020/02/20 Python
在HTML5中使用MathML数学公式的简单讲解
2016/02/19 HTML / CSS
马来西亚银饰品牌:JEOEL
2017/12/15 全球购物
企业形象策划方案
2014/05/29 职场文书
群众路线四风自我剖析材料
2014/10/08 职场文书
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
2021/04/14 Python
zabbix自定义监控nginx状态实现过程
2021/11/01 Servers
Vite + React从零开始搭建一个开源组件库
2022/06/25 Javascript