php给一组指定关键词添加span标签的方法


Posted in PHP onMarch 31, 2015

本文实例讲述了php给一组指定关键词添加span标签的方法。分享给大家供大家参考。具体如下:

这里是php给一组指定的关键词添加span标签,高亮突出显示关键词

// Example use: $spanned = codeWords($string_containing_keywords);
// My site: andrew.dx.am
// Using colour==blue, but different arrays of words and different 
// colours can be added.
function onlyWholeWords(&$value, $key) {
// Ignores words after // comment delimiters.
//$value = "/\b(" . $value . ")\b/";  // doesn't handle comments
//$value = "/^(?:(?!\/\/).)*\K\b(" . $value . ")\b/"; 
// \K lookbehind alternative is not supported in PHP < 5.2.4, so use:
  $value = "/^((?:(?!\/\/).)*)\b" . $value . "\b/";
}
function addSpan(&$value, $key, $color='blue') {
  $value = "$1<span style='color:$color'>" . $value . "</span>";
}
function codeWords($code) {
  $keywords = array('as', 'break', 'case', 'class',
  'continue', 'default', 'do', 'elif', 'else',
  'elseif', 'for', 'foreach', 'function', 'if', 
  'new', 'null', 'return', 'self', 'switch',
  'this', 'to', 'typeof', 'until',
  'var', 'void', 'while', 'with');
  $keywords2 = $keywords;
  array_walk($keywords, 'onlyWholeWords');
  array_walk($keywords2, 'addSpan', 'blue');
  $code = preg_replace($keywords, $keywords2, $code);
  return $code;
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
基于PHP的cURL快速入门教程 (小偷采集程序)
Jun 02 PHP
PHP递归调用的小技巧讲解
Feb 19 PHP
php中用加号与用array_merge合并数组的区别深入分析
Jun 03 PHP
PHP实现读取一个1G的文件大小
Aug 24 PHP
PHP同时连接多个mysql数据库示例代码
Mar 17 PHP
对比分析php中Cookie与Session的异同
Feb 19 PHP
PHP创建word文档的方法(平台无关)
Mar 29 PHP
php字符串操作常见问题小结
Oct 11 PHP
PHP和MYSQL实现分页导航思路详解
Apr 11 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
Sep 04 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
May 27 PHP
php使用指定编码导出mysql数据到csv文件的方法
Mar 31 #PHP
php输出全球各个时区列表的方法
Mar 31 #PHP
php限制ip地址范围的方法
Mar 31 #PHP
php使用数组填充下拉列表框的方法
Mar 31 #PHP
php实现的简单日志写入函数
Mar 31 #PHP
PHP获取photoshop写入图片文字信息的方法
Mar 31 #PHP
php简单实现多字节字符串翻转的方法
Mar 31 #PHP
You might like
输入值/表单提交参数过滤有效防止sql注入的方法
2013/12/25 PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
2015/07/01 PHP
PHP 9 大缓存技术总结
2015/09/17 PHP
PHP 数组遍历foreach语法结构及实例
2016/06/13 PHP
js 动态文字滚动的例子
2011/01/17 Javascript
父页面显示遮罩层弹出半透明状态的dialog
2014/03/04 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
2016/06/23 Javascript
Bootstrap选项卡与Masonry插件的完美结合
2016/07/06 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
深入了解javascript 数组的sort方法
2018/06/01 Javascript
vue自定义移动端touch事件之点击、滑动、长按事件
2018/07/10 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
vue同步父子组件和异步父子组件的生命周期顺序问题
2018/10/07 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
Python程序设计入门(4)模块和包
2014/06/16 Python
Python中的面向对象编程详解(下)
2015/04/13 Python
Python随机读取文件实现实例
2017/05/25 Python
Python使用logging模块实现打印log到指定文件的方法
2018/09/05 Python
Python 实现两个列表里元素对应相乘的方法
2018/11/14 Python
Python2和Python3中urllib库中urlencode的使用注意事项
2018/11/26 Python
在python中pandas读文件,有中文字符的方法
2018/12/12 Python
python super的使用方法及实例详解
2019/09/25 Python
Django 实现外键去除自动添加的后缀‘_id’
2019/11/15 Python
Python while循环使用else语句代码实例
2020/02/07 Python
python 追踪except信息方式
2020/04/25 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
25个CSS3动画按钮和菜单教程分享
2012/10/03 HTML / CSS
HTML5 Canvas图像模糊完美解决办法
2018/02/06 HTML / CSS
Gap加拿大官网:Gap Canada
2017/08/24 全球购物
澳大利亚冒险体验:Adrenaline(跳伞、V8赛车、热气球等)
2017/09/18 全球购物
学习新党章思想汇报
2014/01/09 职场文书
小学教师师德感言
2014/02/10 职场文书
卖车协议书范本4篇
2014/10/01 职场文书
MongoDB balancer的使用详解
2021/04/30 MongoDB
opencv深入浅出了解机器学习和深度学习
2022/03/17 Python