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高手?学会“懒惰”的编程
Dec 05 PHP
PHP 中文乱码解决办法总结分析
Jul 30 PHP
php在多维数组中根据键名快速查询其父键以及父键值的代码
May 07 PHP
深入phpMyAdmin的安装与配置的详细步骤
May 07 PHP
PHP APC配置文件2套和参数详解
Jun 11 PHP
PHP往XML中添加节点的方法
Mar 12 PHP
php+mysql实现简单的增删改查功能
Jul 13 PHP
Smarty使用自定义资源的方法
Aug 08 PHP
JSON用法之将PHP数组转JS数组,JS如何接收PHP数组
Oct 08 PHP
实现PHP框架系列文章(6)mysql数据库方法
Mar 04 PHP
实例讲解php数据访问
May 09 PHP
php实现的网页版剪刀石头布游戏示例
Nov 25 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合并静态文件详解
2014/11/14 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
Javascript调用XML制作连动下拉列表框
2006/06/25 Javascript
再次更新!MSClass (Class Of Marquee Scroll通用不间断滚动JS封装类 Ver 1.6)
2007/02/05 Javascript
Javascript之文件操作
2007/03/07 Javascript
Javascript 汉字字节判断
2009/08/01 Javascript
jQuery EasyUI API 中文文档 DateTimeBox日期时间框
2011/10/16 Javascript
javascript阻止浏览器后退事件防止误操作清空表单
2013/11/22 Javascript
基于javascript实现判断移动终端浏览器版本信息
2014/12/09 Javascript
Javascript的表单与验证-非空验证
2016/03/18 Javascript
AngularJS过滤器filter用法总结
2016/12/13 Javascript
微信小程序开发探究
2016/12/27 Javascript
ES6新特性一: let和const命令详解
2017/04/20 Javascript
Node.js EventEmmitter事件监听器用法实例分析
2019/01/07 Javascript
vue scroll滚动判断的实现(是否滚动到底部、滚动方向、滚动节流、获取滚动区域dom元素)
2020/06/11 Javascript
python写入xml文件的方法
2015/05/08 Python
Python中urllib+urllib2+cookielib模块编写爬虫实战
2016/01/20 Python
python游戏地图最短路径求解
2019/01/16 Python
python实现密码验证合格程序的思路详解
2020/06/01 Python
修复iPhone的safari浏览器上submit按钮圆角bug
2012/12/24 HTML / CSS
纯CSS3大转盘抽奖示例代码(响应式、可配置)
2017/01/13 HTML / CSS
香蕉共和国工厂店:Banana Republic Factory
2018/06/09 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
康拓普公司Java笔面试
2016/09/23 面试题
酒店副总岗位职责
2013/12/24 职场文书
学习自我鉴定
2014/02/01 职场文书
拓展训练激励口号
2014/06/17 职场文书
美化环境标语
2014/06/20 职场文书
网上祭英烈活动总结
2015/02/04 职场文书
2016年公共机构节能宣传周活动总结
2016/04/05 职场文书
如何利用JavaScript实现二叉搜索树
2021/04/02 Javascript
Goland使用Go Modules创建/管理项目的操作
2021/05/06 Golang
SpringBoot整合阿里云视频点播的过程详解
2021/12/06 Java/Android
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL
Spring Data JPA框架自定义Repository接口
2022/04/28 Java/Android