/**
* 给一组指定的关键词添加span标签,高亮突出显示关键词
* Example use: $spanned = codeWords($string_containing_keywords);
* Using colour==blue,but different arrays of words and different
* colours can be added.
* @param
* @author 网: www.512Pic.com
**/
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;
}
/*** 来自编程之家 jb51.cc(jb51.cc) ***/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。