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

yipeiwu_com6年前PHP代码库

本文实例讲述了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数字格式化

例如,echo number_format(285266237);   可以输出 285,266,237   另外如果需要格式...

php数据结构之顺序链表与链式线性表示例

本文实例讲述了php数据结构之顺序链表与链式线性表。分享给大家供大家参考,具体如下: 链表操作 1、     InitList(L):初始化链表...

php性能分析之php-fpm慢执行日志slow log用法浅析

本文实例讲述了php性能分析之php-fpm慢执行日志slow log用法。分享给大家供大家参考,具体如下: 众所周知,mysql有slow query log,根据慢查询日志,我们可以...

简单概括PHP的字符串中单引号与双引号的区别

今天有个朋友问起,说下区别,顺便复习下。 单引号与双引号的不同: " "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。 ' '单引号里面的不进行解释,直接输出。...

snoopy PHP版的网络客户端提供本地下载

magpierss中就用到了snoopy,这让我有点兴趣去研究下这个咚咚。再SF上,找到了这个源代码。居然就是一个类,但不要笑看哦,功能可是很强大的。    ...