diff options
Diffstat (limited to 'inc/geshi/php.php')
-rw-r--r-- | inc/geshi/php.php | 51 |
1 files changed, 35 insertions, 16 deletions
diff --git a/inc/geshi/php.php b/inc/geshi/php.php index c459d7c37..52050d584 100644 --- a/inc/geshi/php.php +++ b/inc/geshi/php.php @@ -4,7 +4,7 @@ * -------- * Author: Nigel McNie (nigel@geshi.org) * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.7.22 + * Release Version: 1\.0\.8 * Date Started: 2004/06/20 * * PHP language file for GeSHi. @@ -54,11 +54,19 @@ $language_data = array ( 'LANG_NAME' => 'PHP', 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), 'COMMENT_MULTI' => array('/*' => '*/'), - //Heredoc and Nowdoc syntax - 'COMMENT_REGEXP' => array(3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU'), + 'HARDQUOTE' => array("'", "'"), + 'HARDESCAPE' => array("\'"), + 'COMMENT_REGEXP' => array( + //Heredoc and Nowdoc syntax + 3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', + // phpdoc comments + 4 => '#/\*\*(?!\*).*\*/#sU' + ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), + 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '\\', + 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | + GESHI_NUMBER_FLT_SCI_ZERO, 'KEYWORDS' => array( 1 => array( 'include', 'require', 'include_once', 'require_once', @@ -68,17 +76,17 @@ $language_data = array ( ), 2 => array( 'null', '__LINE__', '__FILE__', - 'false', '<?php', '?>', '<?', + 'false', '<?php', '<?', '<?=', '?>', '<%', '<%=', '%>', '<script language', '</script>', 'true', 'var', 'default', - 'function', 'class', 'new', '&new', 'public', 'private', 'interface', 'extends', + 'function', 'class', 'new', '&new', 'public', 'private', 'interface', 'extends', 'self', 'const', '__FUNCTION__', '__CLASS__', '__METHOD__', 'PHP_VERSION', 'PHP_OS', 'DEFAULT_INCLUDE_PATH', 'PEAR_INSTALL_DIR', 'PEAR_EXTENSION_DIR', 'PHP_EXTENSION_DIR', 'PHP_BINDIR', 'PHP_LIBDIR', 'PHP_DATADIR', 'PHP_SYSCONFDIR', 'PHP_LOCALSTATEDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_OUTPUT_HANDLER_START', 'PHP_OUTPUT_HANDLER_CONT', 'PHP_OUTPUT_HANDLER_END', 'E_ERROR', 'E_WARNING', 'E_PARSE', 'E_NOTICE', 'E_CORE_ERROR', 'E_CORE_WARNING', 'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_USER_ERROR', - 'E_USER_WARNING', 'E_USER_NOTICE', 'E_ALL' + 'E_USER_WARNING', 'E_USER_NOTICE', 'E_ALL', 'E_STRICT' ), 3 => array( 'zlib_get_coding_type','zend_version','zend_logo_guid','yp_order','yp_next', @@ -284,19 +292,25 @@ $language_data = array ( 1 => 'color: #666666; font-style: italic;', 2 => 'color: #666666; font-style: italic;', 3 => 'color: #0000cc; font-style: italic;', + 4 => 'color: #0000ff; font-style: italic;', 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' + 0 => 'color: #000099; font-weight: bold;', + 'HARD' => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( - 0 => 'color: #0000ff;' + 0 => 'color: #0000ff;', + 'HARD' => 'color: #0000ff;' ), 'NUMBERS' => array( - 0 => 'color: #cc66cc;' + 0 => 'color: #cc66cc;', + GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', + GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', + GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', ), 'METHODS' => array( 1 => 'color: #004000;', @@ -306,20 +320,21 @@ $language_data = array ( 0 => 'color: #339933;' ), 'REGEXPS' => array( - 0 => 'color: #000033;' + 0 => 'color: #000088;' ), 'SCRIPT' => array( 0 => '', 1 => '', 2 => '', - 3 => '' + 3 => '', + 4 => '', + 5 => '' ) ), 'URLS' => array( 1 => '', 2 => '', - 3 => 'http://www.php.net/{FNAME}', - 4 => '' + 3 => 'http://www.php.net/{FNAMEL}' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( @@ -343,13 +358,17 @@ $language_data = array ( ), 3 => array( '<script language="php">' => '</script>' - ) + ), + 4 => "/(<\?(?:php)?)(?:'[^']*?'|\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(\?>|\Z)/sm", + 5 => "/(<%)(?:'[^']*?'|\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(%>|\Z)/sm" ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true, 1 => true, 2 => true, - 3 => true + 3 => true, + 4 => true, + 5 => true ), 'TAB_WIDTH' => 4 ); |