php实现简单的语法高亮函数实例分析
本文实例讲述了php实现简单的语法高亮函数。分享给大家供大家参考。具体分析如下:
这是一个php实现的简单语法高亮显示的函数,注意:这个函数设计的比较简单,可能对某些语法不能高亮显示,你可以自己扩充该函数的功能
functionsyntax_highlight($code){
//thismatches-->"foobar"<--
$code=preg_replace(
'/"(.*?)"/U',
'"<spanstyle="color:#007F00">$1</span>"',$code
);
//hightlightfunctionsandotherstructureslike-->functionfoobar()<---
$code=preg_replace(
'/(\s)\b(.*?)((\b|\s)\()/U',
'$1<spanstyle="color:#0000ff">$2</span>$3',
$code
);
//Matchcomments(like/**/):
$code=preg_replace(
'/(\/\/)(.+)\s/',
'<spanstyle="color:#660066;background-color:#FFFCB1;"><i>$0</i></span>',
$code
);
$code=preg_replace(
'/(\/\*.*?\*\/)/s',
'<spanstyle="color:#660066;background-color:#FFFCB1;"><i>$0</i></span>',
$code
);
//hightlightbraces:
$code=preg_replace('/(\(|\[|\{|\}|\]|\)|\->)/','<strong>$1</strong>',$code);
//hightlightvariables$foobar
$code=preg_replace(
'/(\$[a-zA-Z0-9_]+)/','<spanstyle="color:#0000B3">$1</span>',$code
);
/*The\binthepatternindicatesawordboundary,soonlythedistinct
**word"web"ismatched,andnotawordpartiallike"webbing"or"cobweb"
*/
//specialwordsandfunctions
$code=preg_replace(
'/\b(print|echo|new|function)\b/',
'<spanstyle="color:#7F007F">$1</span>',$code
);
return$code;
}
/*example-start*/
/*
**CreatesomeexamplePHPcode:
*/
$example_php_code='
//somecodecomment:
$example="foobar";
print$_SERVER["REMOTE_ADDR"];
$array=array(1,2,3,4,5);
functionexample_function($str){
//reversestring
echostrrev($obj);
}
printexample_function("foo");
/*
**Amultiplelinecomment
*/
print"Something:".$example;';
//outputtheformattedcode:
print'<pre>';
printsyntax_highlight($example_php_code);
print'</pre>';
/*example-end*/
希望本文所述对大家的php程序设计有所帮助。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下