A tumblelog CMS built on AJAX, PHP and MySQL.

php.php 24KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358
  1. <?php
  2. /*************************************************************************************
  3. * php.php
  4. * --------
  5. * Author: Nigel McNie (nigel@geshi.org)
  6. * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
  7. * Release Version: 1.0.7.21
  8. * Date Started: 2004/06/20
  9. *
  10. * PHP language file for GeSHi.
  11. *
  12. * CHANGES
  13. * -------
  14. * 2004/11/25 (1.0.3)
  15. * - Added support for multiple object splitters
  16. * - Fixed &new problem
  17. * 2004/10/27 (1.0.2)
  18. * - Added URL support
  19. * - Added extra constants
  20. * 2004/08/05 (1.0.1)
  21. * - Added support for symbols
  22. * 2004/07/14 (1.0.0)
  23. * - First Release
  24. *
  25. * TODO (updated 2004/07/14)
  26. * -------------------------
  27. * * Make sure the last few function I may have missed
  28. * (like eval()) are included for highlighting
  29. * * Split to several files - php4, php5 etc
  30. *
  31. *************************************************************************************
  32. *
  33. * This file is part of GeSHi.
  34. *
  35. * GeSHi is free software; you can redistribute it and/or modify
  36. * it under the terms of the GNU General Public License as published by
  37. * the Free Software Foundation; either version 2 of the License, or
  38. * (at your option) any later version.
  39. *
  40. * GeSHi is distributed in the hope that it will be useful,
  41. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  42. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  43. * GNU General Public License for more details.
  44. *
  45. * You should have received a copy of the GNU General Public License
  46. * along with GeSHi; if not, write to the Free Software
  47. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  48. *
  49. ************************************************************************************/
  50. $language_data = array(
  51. 'LANG_NAME' => 'PHP',
  52. 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
  53. 'COMMENT_MULTI' => array('/*' => '*/'),
  54. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  55. 'QUOTEMARKS' => array("'", '"'),
  56. 'ESCAPE_CHAR' => '\\',
  57. 'KEYWORDS' => array(
  58. 1 => array(
  59. 'include', 'require', 'include_once', 'require_once',
  60. 'for', 'foreach', 'as', 'if', 'elseif', 'else', 'while', 'do', 'endwhile',
  61. 'endif', 'switch', 'case', 'endswitch', 'endfor', 'endforeach',
  62. 'return', 'break', 'continue'
  63. ),
  64. 2 => array(
  65. 'null', '__LINE__', '__FILE__',
  66. 'false', '&lt;?php', '?&gt;', '&lt;?',
  67. '&lt;script language', '&lt;/script&gt;',
  68. 'true', 'var', 'default',
  69. 'function', 'class', 'new', '&amp;new', 'public', 'private', 'interface', 'extends',
  70. '__FUNCTION__', '__CLASS__', '__METHOD__', 'PHP_VERSION',
  71. 'PHP_OS', 'DEFAULT_INCLUDE_PATH', 'PEAR_INSTALL_DIR', 'PEAR_EXTENSION_DIR',
  72. 'PHP_EXTENSION_DIR', 'PHP_BINDIR', 'PHP_LIBDIR', 'PHP_DATADIR', 'PHP_SYSCONFDIR',
  73. 'PHP_LOCALSTATEDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_OUTPUT_HANDLER_START', 'PHP_OUTPUT_HANDLER_CONT',
  74. 'PHP_OUTPUT_HANDLER_END', 'E_ERROR', 'E_WARNING', 'E_PARSE', 'E_NOTICE',
  75. 'E_CORE_ERROR', 'E_CORE_WARNING', 'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_USER_ERROR',
  76. 'E_USER_WARNING', 'E_USER_NOTICE', 'E_ALL'
  77. ),
  78. 3 => array(
  79. 'zlib_get_coding_type','zend_version','zend_logo_guid','yp_order','yp_next',
  80. 'yp_match','yp_master','yp_get_default_domain','yp_first','yp_errno','yp_err_string',
  81. 'yp_cat','yp_all','xml_set_unparsed_entity_decl_handler','xml_set_start_namespace_decl_handler','xml_set_processing_instruction_handler','xml_set_object',
  82. 'xml_set_notation_decl_handler','xml_set_external_entity_ref_handler','xml_set_end_namespace_decl_handler','xml_set_element_handler','xml_set_default_handler','xml_set_character_data_handler',
  83. 'xml_parser_set_option','xml_parser_get_option','xml_parser_free','xml_parser_create_ns','xml_parser_create','xml_parse_into_struct',
  84. 'xml_parse','xml_get_error_code','xml_get_current_line_number','xml_get_current_column_number','xml_get_current_byte_index','xml_error_string',
  85. 'wordwrap','wddx_serialize_vars','wddx_serialize_value','wddx_packet_start','wddx_packet_end','wddx_deserialize',
  86. 'wddx_add_vars','vsprintf','vprintf','virtual','version_compare','var_export',
  87. 'var_dump','utf8_encode','utf8_decode','usort','usleep','user_error',
  88. 'urlencode','urldecode','unserialize','unregister_tick_function','unpack','unlink',
  89. 'unixtojd','uniqid','umask','uksort','ucwords','ucfirst',
  90. 'uasort','trim','trigger_error','touch','token_name','token_get_all',
  91. 'tmpfile','time','textdomain','tempnam','tanh','tan',
  92. 'system','syslog','symlink','substr_replace','substr_count','substr',
  93. 'strval','strtr','strtoupper','strtotime','strtolower','strtok',
  94. 'strstr','strspn','strrpos','strrev','strrchr','strpos',
  95. 'strncmp','strncasecmp','strnatcmp','strnatcasecmp','strlen','stristr',
  96. 'stripslashes','stripcslashes','strip_tags','strftime','stream_wrapper_register','stream_set_write_buffer',
  97. 'stream_set_timeout','stream_set_blocking','stream_select','stream_register_wrapper','stream_get_meta_data','stream_filter_prepend',
  98. 'stream_filter_append','stream_context_set_params','stream_context_set_option','stream_context_get_options','stream_context_create','strcspn',
  99. 'strcoll','strcmp','strchr','strcasecmp','str_word_count','str_shuffle',
  100. 'str_rot13','str_replace','str_repeat','str_pad','stat','sscanf',
  101. 'srand','sqrt','sql_regcase','sprintf','spliti','split',
  102. 'soundex','sort','socket_writev','socket_write','socket_strerror','socket_shutdown',
  103. 'socket_setopt','socket_set_timeout','socket_set_option','socket_set_nonblock','socket_set_blocking','socket_set_block',
  104. 'socket_sendto','socket_sendmsg','socket_send','socket_select','socket_recvmsg','socket_recvfrom',
  105. 'socket_recv','socket_readv','socket_read','socket_listen','socket_last_error','socket_iovec_set',
  106. 'socket_iovec_free','socket_iovec_fetch','socket_iovec_delete','socket_iovec_alloc','socket_iovec_add','socket_getsockname',
  107. 'socket_getpeername','socket_getopt','socket_get_status','socket_get_option','socket_create_pair','socket_create_listen',
  108. 'socket_create','socket_connect','socket_close','socket_clear_error','socket_bind','socket_accept',
  109. 'sleep','sizeof','sinh','sin','similar_text','shuffle',
  110. 'show_source','shmop_write','shmop_size','shmop_read','shmop_open','shmop_delete',
  111. 'shmop_close','shm_remove_var','shm_remove','shm_put_var','shm_get_var','shm_detach',
  112. 'shm_attach','shell_exec','sha1_file','sha1','settype','setlocale',
  113. 'setcookie','set_time_limit','set_socket_blocking','set_magic_quotes_runtime','set_include_path','set_file_buffer',
  114. 'set_error_handler','session_write_close','session_unset','session_unregister','session_start','session_set_save_handler',
  115. 'session_set_cookie_params','session_save_path','session_register','session_regenerate_id','session_name','session_module_name',
  116. 'session_is_registered','session_id','session_get_cookie_params','session_encode','session_destroy','session_decode',
  117. 'session_cache_limiter','session_cache_expire','serialize','sem_remove','sem_release','sem_get',
  118. 'sem_acquire','rtrim','rsort','round','rmdir','rewinddir',
  119. 'rewind','restore_include_path','restore_error_handler','reset','rename','register_tick_function',
  120. 'register_shutdown_function','realpath','readlink','readgzfile','readfile','readdir',
  121. 'read_exif_data','rawurlencode','rawurldecode','range','rand','rad2deg',
  122. 'quotemeta','quoted_printable_decode','putenv','proc_open','proc_close','printf',
  123. 'print_r','prev','preg_split','preg_replace_callback','preg_replace','preg_quote',
  124. 'preg_match_all','preg_match','preg_grep','pow','posix_uname','posix_ttyname',
  125. 'posix_times','posix_strerror','posix_setuid','posix_setsid','posix_setpgid','posix_setgid',
  126. 'posix_seteuid','posix_setegid','posix_mkfifo','posix_kill','posix_isatty','posix_getuid',
  127. 'posix_getsid','posix_getrlimit','posix_getpwuid','posix_getpwnam','posix_getppid','posix_getpid',
  128. 'posix_getpgrp','posix_getpgid','posix_getlogin','posix_getgroups','posix_getgrnam','posix_getgrgid',
  129. 'posix_getgid','posix_geteuid','posix_getegid','posix_getcwd','posix_get_last_error','posix_errno',
  130. 'posix_ctermid','pos','popen','pi','phpversion','phpinfo',
  131. 'phpcredits','php_uname','php_sapi_name','php_logo_guid','php_ini_scanned_files','pg_update',
  132. 'pg_untrace','pg_unescape_bytea','pg_tty','pg_trace','pg_setclientencoding','pg_set_client_encoding',
  133. 'pg_send_query','pg_select','pg_result_status','pg_result_seek','pg_result_error','pg_result',
  134. 'pg_query','pg_put_line','pg_port','pg_ping','pg_pconnect','pg_options',
  135. 'pg_numrows','pg_numfields','pg_num_rows','pg_num_fields','pg_meta_data','pg_lowrite',
  136. 'pg_lounlink','pg_loreadall','pg_loread','pg_loopen','pg_loimport','pg_loexport',
  137. 'pg_locreate','pg_loclose','pg_lo_write','pg_lo_unlink','pg_lo_tell','pg_lo_seek',
  138. 'pg_lo_read_all','pg_lo_read','pg_lo_open','pg_lo_import','pg_lo_export','pg_lo_create',
  139. 'pg_lo_close','pg_last_oid','pg_last_notice','pg_last_error','pg_insert','pg_host',
  140. 'pg_getlastoid','pg_get_result','pg_get_pid','pg_get_notify','pg_freeresult','pg_free_result',
  141. 'pg_fieldtype','pg_fieldsize','pg_fieldprtlen','pg_fieldnum','pg_fieldname','pg_fieldisnull',
  142. 'pg_field_type','pg_field_size','pg_field_prtlen','pg_field_num','pg_field_name','pg_field_is_null',
  143. 'pg_fetch_row','pg_fetch_result','pg_fetch_object','pg_fetch_assoc','pg_fetch_array','pg_fetch_all',
  144. 'pg_exec','pg_escape_string','pg_escape_bytea','pg_errormessage','pg_end_copy','pg_delete',
  145. 'pg_dbname','pg_copy_to','pg_copy_from','pg_convert','pg_connection_status','pg_connection_reset',
  146. 'pg_connection_busy','pg_connect','pg_cmdtuples','pg_close','pg_clientencoding','pg_client_encoding',
  147. 'pg_cancel_query','pg_affected_rows','pfsockopen','pclose','pathinfo','passthru',
  148. 'parse_url','parse_str','parse_ini_file','pack','overload','output_reset_rewrite_vars',
  149. 'output_add_rewrite_var','ord','openssl_x509_read','openssl_x509_parse','openssl_x509_free','openssl_x509_export_to_file',
  150. 'openssl_x509_export','openssl_x509_checkpurpose','openssl_x509_check_private_key','openssl_verify','openssl_sign','openssl_seal',
  151. 'openssl_public_encrypt','openssl_public_decrypt','openssl_private_encrypt','openssl_private_decrypt','openssl_pkey_new','openssl_pkey_get_public',
  152. 'openssl_pkey_get_private','openssl_pkey_free','openssl_pkey_export_to_file','openssl_pkey_export','openssl_pkcs7_verify','openssl_pkcs7_sign',
  153. 'openssl_pkcs7_encrypt','openssl_pkcs7_decrypt','openssl_open','openssl_get_publickey','openssl_get_privatekey','openssl_free_key',
  154. 'openssl_error_string','openssl_csr_sign','openssl_csr_new','openssl_csr_export_to_file','openssl_csr_export','openlog',
  155. 'opendir','octdec','ob_start','ob_list_handlers','ob_implicit_flush','ob_iconv_handler',
  156. 'ob_gzhandler','ob_get_status','ob_get_level','ob_get_length','ob_get_flush','ob_get_contents',
  157. 'ob_get_clean','ob_flush','ob_end_flush','ob_end_clean','ob_clean','number_format',
  158. 'nl_langinfo','nl2br','ngettext','next','natsort','natcasesort',
  159. 'mysql_unbuffered_query','mysql_thread_id','mysql_tablename','mysql_table_name','mysql_stat','mysql_selectdb',
  160. 'mysql_select_db','mysql_result','mysql_real_escape_string','mysql_query','mysql_ping','mysql_pconnect',
  161. 'mysql_numrows','mysql_numfields','mysql_num_rows','mysql_num_fields','mysql_listtables','mysql_listfields',
  162. 'mysql_listdbs','mysql_list_tables','mysql_list_processes','mysql_list_fields','mysql_list_dbs','mysql_insert_id',
  163. 'mysql_info','mysql_get_server_info','mysql_get_proto_info','mysql_get_host_info','mysql_get_client_info','mysql_freeresult',
  164. 'mysql_free_result','mysql_fieldtype','mysql_fieldtable','mysql_fieldname','mysql_fieldlen','mysql_fieldflags',
  165. 'mysql_field_type','mysql_field_table','mysql_field_seek','mysql_field_name','mysql_field_len','mysql_field_flags',
  166. 'mysql_fetch_row','mysql_fetch_object','mysql_fetch_lengths','mysql_fetch_field','mysql_fetch_assoc','mysql_fetch_array',
  167. 'mysql_escape_string','mysql_error','mysql_errno','mysql_dropdb','mysql_drop_db','mysql_dbname',
  168. 'mysql_db_query','mysql_db_name','mysql_data_seek','mysql_createdb','mysql_create_db','mysql_connect',
  169. 'mysql_close','mysql_client_encoding','mysql_affected_rows','mysql','mt_srand','mt_rand',
  170. 'mt_getrandmax','move_uploaded_file','money_format','mktime','mkdir','min',
  171. 'microtime','method_exists','metaphone','memory_get_usage','md5_file','md5',
  172. 'mbsubstr','mbstrrpos','mbstrpos','mbstrlen','mbstrcut','mbsplit',
  173. 'mbregex_encoding','mberegi_replace','mberegi','mbereg_search_setpos','mbereg_search_regs','mbereg_search_pos',
  174. 'mbereg_search_init','mbereg_search_getregs','mbereg_search_getpos','mbereg_search','mbereg_replace','mbereg_match',
  175. 'mbereg','mb_substr_count','mb_substr','mb_substitute_character','mb_strwidth','mb_strtoupper',
  176. 'mb_strtolower','mb_strrpos','mb_strpos','mb_strlen','mb_strimwidth','mb_strcut',
  177. 'mb_split','mb_send_mail','mb_regex_set_options','mb_regex_encoding','mb_preferred_mime_name','mb_parse_str',
  178. 'mb_output_handler','mb_language','mb_internal_encoding','mb_http_output','mb_http_input','mb_get_info',
  179. 'mb_eregi_replace','mb_eregi','mb_ereg_search_setpos','mb_ereg_search_regs','mb_ereg_search_pos','mb_ereg_search_init',
  180. 'mb_ereg_search_getregs','mb_ereg_search_getpos','mb_ereg_search','mb_ereg_replace','mb_ereg_match','mb_ereg',
  181. 'mb_encode_numericentity','mb_encode_mimeheader','mb_detect_order','mb_detect_encoding','mb_decode_numericentity','mb_decode_mimeheader',
  182. 'mb_convert_variables','mb_convert_kana','mb_convert_encoding','mb_convert_case','max','mail',
  183. 'magic_quotes_runtime','ltrim','lstat','long2ip','log1p','log10',
  184. 'log','localtime','localeconv','linkinfo','link','levenshtein',
  185. 'lcg_value','ksort','krsort','key_exists','key','juliantojd',
  186. 'join','jewishtojd','jdtounix','jdtojulian','jdtojewish','jdtogregorian',
  187. 'jdtofrench','jdmonthname','jddayofweek','is_writeable','is_writable','is_uploaded_file',
  188. 'is_subclass_of','is_string','is_scalar','is_resource','is_real','is_readable',
  189. 'is_object','is_numeric','is_null','is_nan','is_long','is_link',
  190. 'is_integer','is_int','is_infinite','is_float','is_finite','is_file',
  191. 'is_executable','is_double','is_dir','is_callable','is_bool','is_array',
  192. 'is_a','iptcparse','iptcembed','ip2long','intval','ini_set',
  193. 'ini_restore','ini_get_all','ini_get','ini_alter','in_array','import_request_variables',
  194. 'implode','image_type_to_mime_type','ignore_user_abort','iconv_set_encoding','iconv_get_encoding','iconv',
  195. 'i18n_mime_header_encode','i18n_mime_header_decode','i18n_ja_jp_hantozen','i18n_internal_encoding','i18n_http_output','i18n_http_input',
  196. 'i18n_discover_encoding','i18n_convert','hypot','htmlspecialchars','htmlentities','html_entity_decode',
  197. 'highlight_string','highlight_file','hexdec','hebrevc','hebrev','headers_sent',
  198. 'header','gzwrite','gzuncompress','gztell','gzseek','gzrewind',
  199. 'gzread','gzputs','gzpassthru','gzopen','gzinflate','gzgetss',
  200. 'gzgets','gzgetc','gzfile','gzeof','gzencode','gzdeflate',
  201. 'gzcompress','gzclose','gregoriantojd','gmstrftime','gmmktime','gmdate',
  202. 'glob','gettype','gettimeofday','gettext','getservbyport','getservbyname',
  203. 'getrusage','getrandmax','getprotobynumber','getprotobyname','getopt','getmyuid',
  204. 'getmypid','getmyinode','getmygid','getmxrr','getlastmod','getimagesize',
  205. 'gethostbynamel','gethostbyname','gethostbyaddr','getenv','getdate','getcwd',
  206. 'getallheaders','get_resource_type','get_required_files','get_parent_class','get_object_vars','get_meta_tags',
  207. 'get_magic_quotes_runtime','get_magic_quotes_gpc','get_loaded_extensions','get_included_files','get_include_path','get_html_translation_table',
  208. 'get_extension_funcs','get_defined_vars','get_defined_functions','get_defined_constants','get_declared_classes','get_current_user',
  209. 'get_class_vars','get_class_methods','get_class','get_cfg_var','get_browser','fwrite',
  210. 'function_exists','func_num_args','func_get_args','func_get_arg','ftruncate','ftp_systype',
  211. 'ftp_ssl_connect','ftp_size','ftp_site','ftp_set_option','ftp_rmdir','ftp_rename',
  212. 'ftp_rawlist','ftp_quit','ftp_pwd','ftp_put','ftp_pasv','ftp_nlist',
  213. 'ftp_nb_put','ftp_nb_get','ftp_nb_fput','ftp_nb_fget','ftp_nb_continue','ftp_mkdir',
  214. 'ftp_mdtm','ftp_login','ftp_get_option','ftp_get','ftp_fput','ftp_fget',
  215. 'ftp_exec','ftp_delete','ftp_connect','ftp_close','ftp_chdir','ftp_cdup',
  216. 'ftok','ftell','fstat','fsockopen','fseek','fscanf',
  217. 'frenchtojd','fread','fputs','fpassthru','fopen','fnmatch',
  218. 'fmod','flush','floor','flock','floatval','filetype',
  219. 'filesize','filepro_rowcount','filepro_retrieve','filepro_fieldwidth','filepro_fieldtype','filepro_fieldname',
  220. 'filepro_fieldcount','filepro','fileperms','fileowner','filemtime','fileinode',
  221. 'filegroup','filectime','fileatime','file_get_contents','file_exists','file',
  222. 'fgetss','fgets','fgetcsv','fgetc','fflush','feof',
  223. 'fclose','ezmlm_hash','extract','extension_loaded','expm1','explode',
  224. 'exp','exif_thumbnail','exif_tagname','exif_read_data','exif_imagetype','exec',
  225. 'escapeshellcmd','escapeshellarg','error_reporting','error_log','eregi_replace','eregi',
  226. 'ereg_replace','ereg','end','easter_days','easter_date','each',
  227. 'doubleval','dngettext','dl','diskfreespace','disk_total_space','disk_free_space',
  228. 'dirname','dir','dgettext','deg2rad','defined','define_syslog_variables',
  229. 'define','decoct','dechex','decbin','debug_zval_dump','debug_backtrace',
  230. 'deaggregate','dcngettext','dcgettext','dba_sync','dba_replace','dba_popen',
  231. 'dba_optimize','dba_open','dba_nextkey','dba_list','dba_insert','dba_handlers',
  232. 'dba_firstkey','dba_fetch','dba_exists','dba_delete','dba_close','date',
  233. 'current','ctype_xdigit','ctype_upper','ctype_space','ctype_punct','ctype_print',
  234. 'ctype_lower','ctype_graph','ctype_digit','ctype_cntrl','ctype_alpha','ctype_alnum',
  235. 'crypt','create_function','crc32','count_chars','count','cosh',
  236. 'cos','copy','convert_cyr_string','constant','connection_status','connection_aborted',
  237. 'compact','closelog','closedir','clearstatcache','class_exists','chunk_split',
  238. 'chr','chown','chop','chmod','chgrp','checkdnsrr',
  239. 'checkdate','chdir','ceil','call_user_method_array','call_user_method','call_user_func_array',
  240. 'call_user_func','cal_to_jd','cal_info','cal_from_jd','cal_days_in_month','bzwrite',
  241. 'bzread','bzopen','bzflush','bzerrstr','bzerror','bzerrno',
  242. 'bzdecompress','bzcompress','bzclose','bindtextdomain','bindec','bind_textdomain_codeset',
  243. 'bin2hex','bcsub','bcsqrt','bcscale','bcpow','bcmul',
  244. 'bcmod','bcdiv','bccomp','bcadd','basename','base_convert',
  245. 'base64_encode','base64_decode','atanh','atan2','atan','assert_options',
  246. 'assert','asort','asinh','asin','arsort','array_walk',
  247. 'array_values','array_unshift','array_unique','array_sum','array_splice','array_slice',
  248. 'array_shift','array_search','array_reverse','array_reduce','array_rand','array_push',
  249. 'array_pop','array_pad','array_multisort','array_merge_recursive','array_merge','array_map',
  250. 'array_keys','array_key_exists','array_intersect_assoc','array_intersect','array_flip','array_filter',
  251. 'array_fill','array_diff_assoc','array_diff','array_count_values','array_chunk','array_change_key_case',
  252. 'apache_setenv','apache_response_headers','apache_request_headers','apache_note','apache_lookup_uri','apache_get_version',
  253. 'apache_child_terminate','aggregation_info','aggregate_properties_by_regexp','aggregate_properties_by_list','aggregate_properties','aggregate_methods_by_regexp',
  254. 'aggregate_methods_by_list','aggregate_methods','aggregate','addslashes','addcslashes','acosh',
  255. 'acos','abs','_','echo', 'print', 'global', 'static', 'exit', 'array', 'empty',
  256. 'eval', 'isset', 'unset', 'die', 'list'
  257. )
  258. ),
  259. 'SYMBOLS' => array(
  260. '(', ')', '[', ']', '{', '}',
  261. '!', '@', '%', '&', '|', '/',
  262. '<', '>',
  263. '=', '-', '+', '*',
  264. '.', ':', ',', ';'
  265. ),
  266. 'CASE_SENSITIVE' => array(
  267. GESHI_COMMENTS => false,
  268. 1 => false,
  269. 2 => false,
  270. 3 => false,
  271. ),
  272. 'STYLES' => array(
  273. 'KEYWORDS' => array(
  274. 1 => 'color: #b1b100;',
  275. 2 => 'color: #000000; font-weight: bold;',
  276. 3 => 'color: #000066;'
  277. ),
  278. 'COMMENTS' => array(
  279. 1 => 'color: #808080; font-style: italic;',
  280. 2 => 'color: #808080; font-style: italic;',
  281. 'MULTI' => 'color: #808080; font-style: italic;'
  282. ),
  283. 'ESCAPE_CHAR' => array(
  284. 0 => 'color: #000099; font-weight: bold;'
  285. ),
  286. 'BRACKETS' => array(
  287. 0 => 'color: #66cc66;'
  288. ),
  289. 'STRINGS' => array(
  290. 0 => 'color: #ff0000;'
  291. ),
  292. 'NUMBERS' => array(
  293. 0 => 'color: #cc66cc;'
  294. ),
  295. 'METHODS' => array(
  296. 1 => 'color: #006600;',
  297. 2 => 'color: #006600;'
  298. ),
  299. 'SYMBOLS' => array(
  300. 0 => 'color: #66cc66;'
  301. ),
  302. 'REGEXPS' => array(
  303. 0 => 'color: #0000ff;',
  304. 1 => 'color: #ff0000'
  305. ),
  306. 'SCRIPT' => array(
  307. 0 => '',
  308. 1 => '',
  309. 2 => '',
  310. 3 => ''
  311. )
  312. ),
  313. 'URLS' => array(
  314. 1 => '',
  315. 2 => '',
  316. 3 => 'http://www.php.net/{FNAME}',
  317. 4 => ''
  318. ),
  319. 'OOLANG' => true,
  320. 'OBJECT_SPLITTERS' => array(
  321. 1 => '-&gt;',
  322. 2 => '::'
  323. ),
  324. 'REGEXPS' => array(
  325. 0 => array(
  326. GESHI_SEARCH => "([a-zA-Z]+)(\\n)(.*?)(\\n)(\\1[^a-zA-Z0-9])",
  327. GESHI_REPLACE => '\3',
  328. GESHI_BEFORE => '\1\2',
  329. GESHI_AFTER => '\4\5',
  330. GESHI_MODIFIERS => 'siU'
  331. ),
  332. 1 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*"
  333. ),
  334. 'STRICT_MODE_APPLIES' => GESHI_MAYBE,
  335. 'SCRIPT_DELIMITERS' => array(
  336. 0 => array(
  337. '<?php' => '?>'
  338. ),
  339. 1 => array(
  340. '<?' => '?>'
  341. ),
  342. 2 => array(
  343. '<%' => '%>'
  344. ),
  345. 3 => array(
  346. '<script language="php">' => '</script>'
  347. )
  348. ),
  349. 'HIGHLIGHT_STRICT_BLOCK' => array(
  350. 0 => true,
  351. 1 => true,
  352. 2 => true,
  353. 3 => true
  354. ),
  355. 'TAB_WIDTH' => 4
  356. );