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 相关文章推荐
Extended CHM PHP 语法手册之 DIY
Oct 09 PHP
Smarty模板快速入门
Jan 04 PHP
ThinkPHP 防止表单重复提交的方法
Aug 08 PHP
基于php无限分类的深入理解
Jun 02 PHP
php实现查询百度google收录情况(示例代码)
Aug 02 PHP
Zend studio文件注释模板设置方法
Sep 29 PHP
php 发送带附件邮件示例
Jan 23 PHP
PHP中鲜为人知的10个函数
Feb 28 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
Dec 16 PHP
利用PHP生成静态html页面的原理
Sep 30 PHP
完美解决phpexcel导出到xls文件出现乱码的问题
Oct 29 PHP
PHP验证类的封装与使用方法详解
Jan 10 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 db类库进行数据库操作
2009/03/19 PHP
使用PHP获取网络文件的实现代码
2010/01/01 PHP
面向对象的javascript(笔记)
2009/10/06 Javascript
Node.js 服务器端应用开发框架 -- Hapi.js
2014/07/29 Javascript
JavaScript使用循环和分割来替换和删除元素实例
2014/10/13 Javascript
Javascript中call和apply函数的比较和使用实例
2015/02/03 Javascript
javascript实现10个球随机运动、碰撞实例详解
2015/07/08 Javascript
javascript如何操作HTML下拉列表标签
2015/08/20 Javascript
jQuery插件imgPreviewQs实现上传图片预览
2016/01/15 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
2016/10/30 Javascript
JavaScript比较两个数组的内容是否相同(推荐)
2017/05/02 Javascript
jquery仿微信聊天界面
2017/05/06 jQuery
在JS中如何把毫秒转换成规定的日期时间格式实例
2017/05/11 Javascript
详解vue express启动数据服务
2017/07/05 Javascript
微信小程序template模板实例详解
2017/10/27 Javascript
vue2导航根据路由传值,而改变导航内容的实例
2017/11/10 Javascript
如何根据业务封装自己的功能组件
2019/04/19 Javascript
vue实现扫码功能
2020/01/17 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
python实现计算资源图标crc值的方法
2014/10/05 Python
两个命令把 Vim 打造成 Python IDE的方法
2016/03/20 Python
Python连接SQLServer2000的方法详解
2017/04/19 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
2017/08/18 Python
python查询文件夹下excel的sheet名代码实例
2019/04/02 Python
python求前n个阶乘的和实例
2020/04/02 Python
Python使用pycharm导入pymysql教程
2020/09/16 Python
pycharm 如何取消连按两下shift出现的全局搜索
2021/01/15 Python
html5播放视频且动态截图实现步骤与代码(支持safari其他未测试)
2013/01/06 HTML / CSS
美国著名首饰网站:BaubleBar
2016/08/29 全球购物
域名注册、建站工具、网页主机、SSL证书:Dynadot
2017/01/06 全球购物
美国智能家居专家:tink
2019/06/04 全球购物
Viking Direct爱尔兰:办公用品和家具
2019/11/21 全球购物
字符串str除首尾字符外的其他字符按升序排列
2013/03/08 面试题
校本研修个人总结
2015/02/28 职场文书
公司禁烟通知
2015/04/23 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP