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获取mysql版本的几种方法小结
Mar 25 PHP
spl_autoload_register与autoload的区别详解
Jun 03 PHP
强烈声明: 不要使用(include/require)_once
Jun 06 PHP
关于Sphinx创建全文检索的索引介绍
Jun 25 PHP
请离开include_once和require_once
Jul 18 PHP
php修改指定文件后缀的方法
Sep 11 PHP
PHP用反撇号执行外部命令
Apr 14 PHP
php实现编辑和保存文件的方法
Jul 20 PHP
PHP读取文件的常见几种方法
Nov 03 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
Swoole4.4协程抢占式调度器详解
May 23 PHP
laravel-admin 实现在指定的相册下添加照片
Oct 21 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
ThinkPHP中自定义错误页面和提示页面实例
2014/11/22 PHP
Windows下Apache + PHP SESSION丢失的解决过程全纪录
2015/04/07 PHP
php面向对象值单例模式
2016/05/03 PHP
Zend Framework入门教程之Zend_Db数据库操作详解
2016/12/08 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
一个js实现的所谓的滑动门
2007/05/23 Javascript
jquery弹出框的用法示例(2)
2013/08/26 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
2013/11/06 Javascript
JS去除字符串两端空格的简单实例
2013/12/27 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
jQuery基于当前元素进行下一步的遍历
2014/05/20 Javascript
JavaScript截断字符串的方法
2015/07/15 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
2015/08/06 Javascript
javascript自动恢复文本框点击清除后的默认文本
2016/01/12 Javascript
JSON与XML的区别对比及案例应用
2016/11/11 Javascript
Vue2.x中的父子组件相互通信的实现方法
2017/05/02 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
使用watch监听路由变化和watch监听对象的实例
2018/02/24 Javascript
mpvue跳转页面及注意事项
2018/08/03 Javascript
Vue中rem与postcss-pxtorem的应用详解
2019/11/20 Javascript
Python实现的数据结构与算法之快速排序详解
2015/04/22 Python
django rest framework之请求与响应(详解)
2017/11/06 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
Python容器使用的5个技巧和2个误区总结
2019/09/26 Python
Python3操作读写CSV文件使用包过程解析
2020/04/10 Python
关于python中remove的一些坑小结
2021/01/04 Python
使用phonegap创建联系人的实现方法
2017/03/30 HTML / CSS
俄罗斯鲜花递送:AMF
2020/04/24 全球购物
校园网站的创业计划书范文
2013/12/30 职场文书
建筑结构施工专业推荐信
2014/02/21 职场文书
大学生就业意向书范文
2014/04/01 职场文书
监察建议书格式
2014/05/19 职场文书
党员教师群众路线个人整改措施
2014/10/28 职场文书
2014年妇幼保健工作总结
2014/12/08 职场文书
二年级学生期末评语
2014/12/26 职场文书