这篇文章主要介绍了php给一组指定关键词添加span标签的方法,涉及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程序设计有所帮助。
新闻热点
疑难解答