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
php5 and xml示例
Nov 22 PHP
php 伪造本地文件包含漏洞的代码
Nov 03 PHP
匹配csdn用户数据库与官方用户的重合度并将重叠部分的用户筛选出来
Dec 25 PHP
CodeIgniter输出中文乱码的两种解决办法
Jun 12 PHP
PHP两种去掉数组重复值的方法比较
Jun 19 PHP
Symfony页面的基本创建实例详解
Jan 26 PHP
php通过curl模拟登陆DZ论坛
May 11 PHP
WordPress中调试缩略图的相关PHP函数使用解析
Jan 07 PHP
PHP之将POST数据转化为字符串的实现代码
Nov 03 PHP
php+ajax实现仿百度查询下拉内容功能示例
Oct 20 PHP
apache集成php7.3.5的详细步骤
Jun 20 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 攻击方法之谈php+mysql注射语句构造
2009/10/30 PHP
第三章 php操作符与控制结构代码
2011/12/30 PHP
Symfony生成二维码的方法
2016/02/04 PHP
浅谈php中urlencode与rawurlencode的区别
2016/09/05 PHP
PHP实现的自定义数组排序函数与排序类示例
2016/11/18 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
Jquery Ajax请求代码(2)
2011/01/07 Javascript
JQuery.Ajax之错误调试帮助信息介绍
2013/07/04 Javascript
Javascript中的五种数据类型详解
2014/12/26 Javascript
JS基于FileSystemObject创建一个指定路径的TXT文本文件
2015/08/05 Javascript
JS遍历数组及打印数组实例分析
2016/01/21 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
JS简单设置下拉选择框默认值的方法
2016/08/20 Javascript
Vue3不支持Filters过滤器的问题
2020/09/24 Javascript
Vue基于localStorage存储信息代码实例
2020/11/16 Javascript
js实现菜单跳转效果
2020/12/11 Javascript
[50:27]OG vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.26
2018/08/30 DOTA
Python常用内置函数总结
2015/02/08 Python
在Python中使用列表生成式的教程
2015/04/27 Python
Python字符串拼接的几种方法整理
2017/08/02 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
2018/08/10 Python
解决Python pandas plot输出图形中显示中文乱码问题
2018/12/12 Python
使用Python实现毫秒级抢单功能
2019/06/06 Python
对django的User模型和四种扩展/重写方法小结
2019/08/17 Python
Python实现的爬取豆瓣电影信息功能案例
2019/09/15 Python
Python Pandas对缺失值的处理方法
2019/09/27 Python
美国礼品卡商城: Gift Card Mall
2017/08/25 全球购物
世界上最大的曲棍球商店:Pro Hockey Life
2017/10/30 全球购物
欧洲最大的球衣网上商店:Kitbag
2017/11/11 全球购物
世界上最大的隐形眼镜商店:1-800 Contacts
2018/11/03 全球购物
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
官僚主义现象查摆问题整改措施
2014/10/04 职场文书
详解Python小数据池和代码块缓存机制
2021/04/07 Python
Pytorch中的数据集划分&正则化方法
2021/05/27 Python
CSS精灵图的原理与使用方法介绍
2022/03/17 HTML / CSS
解决redis批量删除key值的问题
2022/03/23 Redis