你值得信赖的源码站!

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

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

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

  1. function syntax_highlight($code){ 
  2.  // this matches –> "foobar" <– 
  3.  $code = preg_replace( 
  4.   '/"(.*?)"/U',  
  5.   '&quot;<span style="color: #007F00">$1</span>&quot;'$code 
  6.  ); 
  7.  // hightlight functions and other structures like –> function foobar() <—  
  8.  $code = preg_replace( 
  9.   '/(\s)\b(.*?)((\b|\s)\()/U',  
  10.   '$1<span style="color: #0000ff">$2</span>$3',  
  11.   $code 
  12.  ); 
  13.  // Match comments (like /* */):  
  14.  $code = preg_replace( 
  15.   '/(\/\/)(.+)\s/',  
  16.   '<span style="color: #660066; background-color: #FFFCB1;"><i>$0</i></span>',  
  17.   $code 
  18.  ); 
  19.  $code = preg_replace( 
  20.   '/(\/\*.*?\*\/)/s',  
  21.   '<span style="color: #660066; background-color: #FFFCB1;"><i>$0</i></span>',  
  22.   $code 
  23.  ); 
  24.  // hightlight braces: 
  25.  $code = preg_replace('/(\(|\[|\{|\}|\]|\)|\->)/''<strong>$1</strong>'$code); 
  26.  // hightlight variables $foobar 
  27.  $code = preg_replace( 
  28.   '/(\$[a-zA-Z0-9_]+)/''<span style="color: #0000B3">$1</span>'$code 
  29.  ); 
  30.  /* The \b in the pattern indicates a word boundary, so only the distinct 
  31.  ** word "web" is matched, and not a word partial like "webbing" or "cobweb"  
  32.  */ 
  33.  // special words and functions 
  34.  $code = preg_replace( 
  35.   '/\b(print|echo|new|function)\b/',  
  36.   '<span style="color: #7F007F">$1</span>'$code 
  37.  ); 
  38.  return $code
  39. /*example-start*/ 
  40. /* 
  41. ** Create some example PHP code: 
  42. */ 
  43. $example_php_code = ' 
  44. // some code comment: 
  45. $example = "foobar"
  46. print $_SERVER["REMOTE_ADDR"]; 
  47. $array = array(1, 2, 3, 4, 5); 
  48. function example_function($str) { 
  49.  // reverse string 
  50.  echo strrev($obj); 
  51. print example_function("foo"); 
  52. /* 
  53. ** A multiple line comment 
  54. */ 
  55. print "Something: " . $example;'; 
  56. // output the formatted code: 
  57. print '<pre>'
  58. print syntax_highlight($example_php_code); 
  59. print '</pre>'
  60. /*example-end*/

赞(0) 本模板价: 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《php实现简单的语法高亮函数实例分析》
文章链接:https://www.adminn.cn/555.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏