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 基于文件头的文件类型验证类函数
May 01 PHP
PHP 安全检测代码片段(分享)
Jul 05 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
php自定义session示例分享
Apr 22 PHP
php的4种常见运行方式
Mar 20 PHP
Yii扩展组件编写方法实例分析
Jun 29 PHP
PHP YII框架开发小技巧之模型(models)中rules自定义验证规则
Nov 16 PHP
PHP下使用mysqli的函数连接mysql出现warning: mysqli::real_connect(): (hy000/1040): ...
Feb 14 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
Apr 02 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
May 12 PHP
Smarty保留变量用法分析
May 23 PHP
php处理抢购类功能的高并发请求
Feb 08 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
php 团购折扣计算公式
2011/11/24 PHP
解析PHP实现下载文件的两种方法
2013/07/05 PHP
PHP中怎样保持SESSION不过期 原理及方案介绍
2013/08/08 PHP
YII使用url组件美化管理的方法
2015/12/28 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
2019/10/16 PHP
PHP数组对象与Json转换操作实例分析
2019/10/22 PHP
Code: write(s,d) 输出连续字符串
2007/08/19 Javascript
学习ExtJS(二) Button常用方法
2009/10/07 Javascript
jquery $(document).ready() 与window.onload的区别
2009/12/28 Javascript
JavaScript中的字符串操作详解
2013/11/12 Javascript
PHP+mysql+Highcharts生成饼状图
2015/05/04 Javascript
JavaScript类型检测之typeof 和 instanceof 的缺陷与优化
2016/01/13 Javascript
AngularJS包括详解及示例代码
2016/08/17 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
2017/02/03 Javascript
nodejs实现解析xml字符串为对象的方法示例
2018/03/14 NodeJs
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
Python利用pyHook实现监听用户鼠标与键盘事件
2014/08/21 Python
Python中的作用域规则详解
2015/01/30 Python
python字典基本操作实例分析
2015/07/11 Python
用Python设计一个经典小游戏
2017/05/15 Python
Python 多进程并发操作中进程池Pool的实例
2017/11/01 Python
wxPython实现窗口用图片做背景
2018/04/25 Python
对python的输出和输出格式详解
2018/12/08 Python
用django设置session过期时间的方法解析
2019/08/05 Python
将Pytorch模型从CPU转换成GPU的实现方法
2019/08/19 Python
python中bytes和str类型的区别
2019/10/21 Python
Python 多进程原理及实现
2020/12/21 Python
英国时尚饰品和发饰购物网站:Claire’s
2017/07/04 全球购物
行政复议答复书
2015/07/01 职场文书
通讯稿范文
2015/07/22 职场文书
2016年国庆节假期旅游工作总结
2016/04/01 职场文书
Go语言-为什么返回值为接口类型,却返回结构体
2021/04/24 Golang
Python识别花卉种类鉴定网络热门植物并自动整理分类
2022/04/08 Python
oracle delete误删除表数据后如何恢复
2022/06/28 Oracle