php实现简单的语法高亮函数实例分析

本文实例讲述了php实现简单的语法高亮函数。分享给大家供大家参考。具体分析如下:

这是一个php实现的简单语法高亮显示的函数,注意:这个函数设计的比较简单,可能对某些语法不能高亮显示,你可以自己扩充该函数的功能

  function syntax_highlight($code){   // this matches --> "foobar" <--   $code = preg_replace(    '/"(.*?)"/U',     '"<span style="color: #007F00">$1</span>"', $code   );   // hightlight functions and other structures like --> function foobar() <---    $code = preg_replace(    '/(s)b(.*?)((b|s)()/U',     '$1<span style="color: #0000ff">$2</span>$3',     $code   );   // Match comments (like /* */):    $code = preg_replace(    '/(//)(.+)s/',     '<span style="color: #660066; background-color: #FFFCB1;"><i>$0</i></span>',     $code   );   $code = preg_replace(    '/(/*.*?*/)/s',     '<span style="color: #660066; background-color: #FFFCB1;"><i>$0</i></span>',     $code   );   // hightlight braces:   $code = preg_replace('/((|[|{|}|]|)|->)/', '<strong>$1</strong>', $code);   // hightlight variables $foobar   $code = preg_replace(    '/($[a-zA-Z0-9_]+)/', '<span style="color: #0000B3">$1</span>', $code   );   /* The b in the pattern indicates a word boundary, so only the distinct   ** word "web" is matched, and not a word partial like "webbing" or "cobweb"    */   // special words and functions   $code = preg_replace(    '/b(print|echo|new|function)b/',     '<span style="color: #7F007F">$1</span>', $code   );   return $code;  }  /*example-start*/  /*  ** Create some example PHP code:  */  $example_php_code = '  // some code comment:  $example = "foobar";  print $_SERVER["REMOTE_ADDR"];  $array = array(1, 2, 3, 4, 5);  function example_function($str) {   // reverse string   echo strrev($obj);  }  print example_function("foo");  /*  ** A multiple line comment  */  print "Something: " . $example;';  // output the formatted code:  print '<pre>';  print syntax_highlight($example_php_code);  print '</pre>';  /*example-end*/

希望本文所述对大家的php程序设计有所帮助。

php实现简单的语法高亮函数实例分析

郑重声明:本网站发布的内容(图片、视频和文字)以及用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服

发表评论

登录后才能评论