/**
 * SyntaxHighlighter
 * http://alexgorbatchev.com/
 *
 * SyntaxHighlighter is donationware. If you are using it, please donate.
 * http://alexgorbatchev.com/wiki/SyntaxHighlighter:Donate
 *
 * @version
 * 2.0.320.modified (May 03 2009)
 *
 * @copyright
 * Copyright (C) 2004-2009 Alex Gorbatchev.
 *
 * @license
 * This file is a modified version of shBrushPhp.js which is part of SyntaxHighlighter.
 *
 * SyntaxHighlighter is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * SyntaxHighlighter is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with SyntaxHighlighter.  If not, see <http://www.gnu.org/copyleft/lesser.html>.
 *
 * shBrushPhp.js by David Chambers
 * http://davidchambersdesign.com/
 * { last updated: 20 March 2010 }
 */
SyntaxHighlighter.brushes.Php = function ()
{
	this.regexList = [

		{ regex: SyntaxHighlighter.regexLib.singleLineCComments,
		    css: 'php-comment comments' },

		{ regex: SyntaxHighlighter.regexLib.multiLineCComments,
		    css: 'php-comment comments' },

		{ regex: /__(CLASS|FILE|FUNCTION|LINE|METHOD)__/gi,
		    css: 'php-constant constants' },

		{ regex: /\b(?:abstract|and|array|as|break|case|class|const|continue|declare|default|die|do|echo|else(( )?if)?|end(declare|for(each)?|if|switch|while)|extends|false|for(each)?|(c|old_)?function|implements|include(_once)?|global|if|interface|new|(x)?or|private|protected|public|return|static|switch|throw|true|use|require(_once)?|var|while)\b/g,
		    css: 'php-keyword keyword' },

		{ regex: /(&lt;|<)\?(php|=)?|\?(&gt;|>)/g,
		    css: 'php-tag' },

		{ regex: SyntaxHighlighter.regexLib.singleQuotedString,
		    css: 'php-string string' },

		{ regex: /[^$\w](\\"|\\\$|[^"$\n])*(?=("|(\\"|[^"\n])*[^\\]")(((\\"|[^"\n])*[^\\]"){2})*(\\"|[^"\n])*$)(")?/gm,
		    css: 'php-string string' },

		{ regex: /"(?=(((\\"|[^"\n])*[^\\]"){2})*(\\"|[^"\n])*$)/gm,
		    css: 'php-string string' },

		{ regex: /\b\d+(\.\d+)?\b/g,
		    css: 'php-numval' },

		{ regex: /\$\w+(?=("|(\\"|[^"\n])*[^\\]")(((\\"|[^"\n])*[^\\]"){2})*(\\"|[^"\n])*$)/gm,
		    css: 'php-varinstr variable' },

		{ regex: /\$\w+/g,
		    css: 'php-variable variable' },

		// functions a-e
		{ regex: /\b(?:abs|acos(h)?|add(c)?slashes|aggregate(_(info|methods(_by_(list|regexp))?|properties(_by_(list|regexp))?))?|aggregation_info|apache_(child_terminate|get(env|_(modules|version))|lookup_uri|note|request_headers|reset_timeout|response_headers|setenv)|apc_(add|cache_info|clear_cache|compile_file|define_constants|delete|fetch|load_constants|sma_info|store)|apd_(breakpoint|callstack|clunk|continue|croak|dump_(function_table|(persistent|regular)_resources)|echo|get_active_symbols|set_(pprof_trace|session(_trace(_socket)?)?))|array(_(change_key_case|chunk|combine|count_values|diff(_((u)?assoc|(u)?key))?|fill(_keys)?|filter|flip|intersect(_((u)?assoc|(u)?key))?|key(s|_exists)|map|merge(_recursive)?|multisort|pad|pop|product|push|rand|reduce|reverse|search|shift|s(p)?lice|sum|udiff(_(u)?assoc)?|uintersect(_(u)?assoc)?|unique|unshift|values|walk(_recursive)?))?|arsort|ascii2ebcdic|asin(h)?|asort|assert(_options)?|atan(2|h)?|base(64_(de|en)code|_convert|name)|bbcode_(add_(element|smiley)|create|destroy|parse|set_(arg_parser|flags))|bc(add|comp|div|mod|mul|pow(mod)?|scale|sqrt|sub)|bcompiler_(load(_exe)?|parse_class|read|write_(class|constant|exe_footer|file|write_(file|footer|function(s_from_file)?|header|included_filename)))|bin2hex|bind(ec|textdomain|_textdomain_codeset)|bz(close|(de)?compress|err(or|no|str)|flush|open|read|write)|cal(cul(_)?hmac|_(days_in_month|from_jd|info|to_jd))|call_user_(func|method)(_array)?|ceil|ch(dir|eck(date|dnsrr)|grp|mod|op|own|r(oot)?|unk_split)|class(kit_(import|method_(add|copy|re(define|move|name)))|_(exists|implements|parents))|clearstatcache|close(dir|log)|collator|com(pact|_(addref|create_guid|event_sink|get(_active_object)?|invoke|isenum|load(_typelib)?|message_pump|print_typeinfo|prop(get|put|set)|release|set))|connection_(aborted|status|timeout)|const(ant|ruct)|convert_(cyr_string|uu(de|en)code)|copy|cos(h)?|count(er_(bump(_value)?|create|get(_(meta|named|value))?|reset(_value)?)|_chars)?|crack_(check|(close|open)dict|getlastmessage)|crc32|create_function|crypt|ctype_(alnum|alpha|cntrl|digit|graph|lower|print|punct|space|upper|xdigit)|curl_(close|copy_handle|err(or|no)|exec|getinfo|init|multi_(add_handle|close|exec|getcontent|info_read|init|remove_handle|select)|setopt(_array)?|version)|current|cyrus_(authenticate|(un)?bind|close|connect|query)|date(interval|period|time(zone)?|_(add|create(_from_format)?|date_set|default_timezone_(g|s)et|diff|format|get_last_errors|interval_(create_from_date_string|format)|isodate_set|modify|offset_get|parse(_from_format)?|sub|sun(rise|set|_info)|time((stamp|zone)_(g|s)et|_set)))?|db2_(autocommit|bind_param|client_info|close|column(s|_privileges)|commit|conn(ect|_error(msg)?)|cursor_type|escape_string|exec(ute)?|fetch_(array|assoc|both|object|row)|field_(display_size|name|num|precision|scale|type|width)|foreign_keys|free_(result|stmt)|get_option|last_insert_id|lob_read|next_result|num_(fields|rows)|pclose|pconnect|prepare|primary_keys|procedure(s|_columns)|result|rollback|server_info|set_option|special_columns|statistics|stmt_error(msg)?|table(s|_privileges))|dba_(close|delete|exists|fetch|firstkey|handlers|insert|key_split|list|nextkey|(p)?open|optimize|replace|sync)|dbase_(add_record|close|create|delete_record|get_(header_info|record(_with_names)?)|num(fields|records)|open|pack|replace_record)|dbplus_(add|aql|chdir|close|curr|err(code|no)|find|first|flush|free((all|r)locks|lock)|get(lock|unique)|info|last|(x)?(un)?lockrel|next|open|prev|rchperm|rcreate|rcrtexact|rcrtlike|resolve|restorepos|rkeys|ropen|rquery|rrename|rsecindex|runlink|rzap|savepos|setindex(bynumber)?|sql|tcl|tremove|undo(prepare)?|unselect|update)|dbx_(close|compare|connect|error|escape_string|fetch_row|query|sort)|dc(n)?gettext|deaggregate|debug_((print_)?backtrace|zval_dump)|dec(bin|hex|oct)|define(d|_syslog_variables)?|deg2rad|delete|dgettext|die|dio_(close|fcntl|open|read|seek|stat|tcsetattr|truncate|write)|dir(ectoryiterator|name)?|disk(_(free|total)_|free)space|dl|dngettext|dns_(check_record|get_(mx|record))|dom_import_simplexml|domxml_(new_doc|open_(file|mem)|version|xmltree|xslt_(stylesheet(_(doc|file))?|version))|dotnet_load|doubleval|each|easter_da(te|ys)|ebcdic2ascii|empty|enchant_(broker_(describe|dict_exists|free(_dict)?|get_error|init|list_dicts|request_(pwl_)?dict|set_ordering)|dict_(add_to_(personal|session)|(quick_)?check|describe|get_error|is_in_session|store_replacement|suggest))|end|ereg(i)?(_replace)?|error_(get_last|log|reporting)|escapeshell(arg|cmd)|eval|exec|exif_(imagetype|read_data|tagname|thumbnail)|exit|exp(ect_(expectl|popen)|lode|m1)?|extension_loaded|extract|ezmlm_hash)\b/g,
		    css: 'php-function functions' },

		// functions f-h
		{ regex: /\b(?:fam_((cancel|resume|suspend)_monitor|close|monitor_(collection|directory|file)|next_event|open|pending)|fbsql_(affected_rows|autocommit|blob_size|change_user|clob_size|close|commit|connect|create_(blob|clob|db)|data(base(_password)?|_seek)|db_(query|status)|drop_db|err(or|no)|fetch_(array|assoc|field|lengths|object|row)|field_(flags|len|name|seek|table|type)|free_result|get_autostart_info|hostname|insert_id|list_(dbs|fields|tables)|next_result|num_(fields|rows)|password|pconnect|query|read_(b|c)lob|result|rollback|rows_fetched|select_db|set_(characterset|lob_mode|password|transaction)|(start|stop)_db|(table(_)?|user)name|warnings)|fclose|fdf_(add_(doc_javascript|template)|close|create|enum_values|err(or|no)|get_(ap|attachment|encoding|file|flags|opt|status|value|version)|header|next_field_name|open(_string)?|remove_item|save(_string)?|set_(ap|encoding|file|flags|javascript_action|on_import_javascript|opt|status|submit_form_action|target_frame|value|version))|feof|(f)?flush|fget(c(sv)?|s(s)?)|file((a|c)time|group|inode|mtime|owner|perms|pro(_(field(count|name|type|width)|retrieve|rowcount))?|size|type|_(exists|(get|put)_contents))?|filter_(has_var|id|input(_array)?|list|var(_array)?)|finfo_(buffer|close|file|open|set_flags)|floatval|flock|floor|fmod|fnmatch|fopen|fpassthru|fprintf|fputcsv|fputs|fread|frenchtojd|fribidi_log2vis|fscanf|fseek|fsockopen|fstat|ftell|ftok|ftp_(alloc|cdup|chdir|chmod|close|connect|delete|exec|fget|fput|get(_option)?|login|mdtm|mkdir|nb_(continue|(f)?get|(f)?put)|nlist|pasv|put|pwd|quit|raw(list)?|rename|rmdir|set_option|si(t|z)e|ssl_connect|systype)|ftruncate|func(tion_exists|_(get_arg(s)?|num_args))|fwrite|gc_(collect_cycles|disable|enable(d)?)|gd_info|geoip_((continent_code|country_(code(3)?|name)|id|isp|org|record|region)_by_name|database_info|db_(avail|filename|get_all_info)|region_name_by_code|time_zone_by_country_and_region)|get(allheaders|cwd|date|env|hostby(addr|name(l)?)|imagesize|lastmod|mxrr|my((g|p|u)id|inode)|opt|protoby(name|number)|randmax|rusage|servby(name|port)|text|timeofday|type|_(browser|called_class|cfg_var|class(_(methods|vars))?|current_user|declared_(classes|interfaces)|defined_(constants|functions|vars)|extension_funcs|headers|html_translation_table|include(d_files|_path)|loaded_extensions|magic_quotes_(gpc|runtime)|meta_tags|object_vars|parent_class|required_files|resource_type))|glob|gm(date|mktime)|gmp_(abs|add|and|clrbit|cmp|com|div(exact|_(q(r)?|r))?|fact|gcd(ext)?|hamdist|init|intval|invert|jacobi|legendre|mod|mul|neg|nextprime|or|perfect_square|popcount|pow(m)?|prob_prime|random|scan(0|1)|setbit|sign|sqrt(rem)?|strval|sub|testbit|xor)|gmstrftime|gnupg_(add((de|en)cryptkey|signkey)|clear((de|en)cryptkeys|signkeys)|decrypt(verify)?|encrypt(sign)?|export|get(error|protocol)|import|init|keyinfo|set(armor|(error|sign)mode)|sign|verify)|gopher_parsedir|grapheme_(extract|str(len|(r)?(i)?pos|(i)?str)|substr)|gregoriantojd|gz(close|(un)?compress|(de|en)code|(de|in)flate|eof|file|get(c|s(s)?)|open|passthru|puts|read|rewind|seek|tell|write)|__halt_compiler|hash(_(algos|copy|file|final|hmac(_file)?|init|update(_(file|stream))?))?|header(s_(list|sent))?|hebrev(c)?|hexdec|highlight_(file|string)|html(entities|specialchars(_decode)?|_entity_decode)|http_(build_(cookie|query|str|url)|cache_(etag|last_modified)|chunked_decode|date|(de|in)flate|get(_request_(body(_stream)?|headers))?|head|match_(etag|modified|request_header)|negotiate_(charset|content_type|language)|parse_(cookie|headers|message|params)|persistent_handles_(clean|count|ident)|post_(data|fields)|put_(data|file|stream)|redirect|request(_(body_encode|method_(exists|name|(un)?register)?))?|send_(content_(disposition|type)|data|file|last_modified|status|stream)|support|throttle)|hw_(array2objrec|changeobject|children(obj)?|close|connect(ion_info)?|cp|deleteobject|docbyanchor(obj)?|document_(attributes|bodytag|(set)?content|size)|dummy|edittext|error(msg)?|free_document|get(anchors(obj)?|andlock|child(doc)?coll(obj)?|object(byquery(coll)?(obj)?)?|parents(obj)?|rellink|remote(children)?|srcbydestobj|text|username)|identify|incollections|info|inscoll|insdoc|insert(anchors|document|object)|mapid|modifyobject|mv|(new_|pipe)document|objrec2array|output_document|pconnect|(setlink)?root|stat|unlock|who)|hypot)\b/g,
		    css: 'php-function functions' },

		// functions i-k
		{ regex: /\b(?:ibase_(add_user|affected_rows|backup|blob_(add|cancel|close|create|echo|get|import|info|open)|close|commit(_ret)?|connect|db_info|delete_user|drop_db|err(code|msg)|execute|fetch_(assoc|object|row)|field_info|free_(event_handler|query|result)|gen_id|maintain_db|modify_user|name_result|num_(fields|params)|param_info|pconnect|prepare|query|restore|rollback(_ret)?|server_info|service_(at|de)tach|set_event_handler|timefmt|trans|wait_event)|iconv(_(get_encoding|mime_(decode(_headers)?|encode)|set_encoding|str(len|pos|rpos)|substr))?|id3_(get_(frame_(long|short)_name|genre_(id|list|name)|tag|version)|(remove|set)_tag)|idate|ifx(us_(close|create|free|open|read|seek|tell|write)_slob|_(affected_rows|blobinfile_mode|byteasvarchar|close|connect|copy_blob|create_(blob|char)|do|error(msg)?|fetch_row|field(properties|types)|free_(blob|char|result)|get(sqlca|_(blob|char))|htmltbl_result|nullformat|num_(fields|rows)|pconnect|prepare|query|textasvarchar|update_(blob|char)))|ignore_user_abort|iis_(add_server|get_(dir_security|script_map|server_(by_(comment|path)|rights)|service_state)|remove_server|set_(app_settings|dir_security|script_map|server_rights)|st(art|op)_serv(er|ice))|image(2wbmp|alphablending|antialias|arc|char(up)?|color(allocate(alpha)?|at|closest(alpha|hwb)?|deallocate|exact(alpha)?|match|resolve(alpha)?|set|sforindex|stotal|transparent)|convolution|copy(merge(gray)?|resampled|resized)?|create(from(gd(2(part)?)?|gif|jpeg|png|string|wbmp|xbm|xpm)|truecolor)?|dashedline|destroy|ellipse|fill(ed(arc|ellipse|polygon|rectangle)|toborder)?|filter|font(height|width)|ftbbox|fttext|gammacorrect|gd(2)?|gif|grab(screen|window)|interlace|istruecolor|jpeg|layereffect|line|loadfont|palettecopy|png|polygon|ps(bbox|(encode|extend|free|load|slant)font|text)|rectangle|rotate|savealpha|set(brush|pixel|style|thickness|tile)|string(up)?|sx|sy|truecolortopalette|ttf(bbox|text)|types|wbmp|xbm|_type_to_(extension|mime_type))|imap_(8bit|alerts|append|base64|binary|body(struct)?|check|clearflag_full|close|createmailbox|delete(mailbox)?|errors|expunge|fetch(body|header|structure|_overview)|get(acl|mailboxes|subscribed|_quota(root)?)|header(s|info)?|last_error|list(mailbox|scan|subscribed)?|lsub|mail(boxmsginfo|_(compose|copy|move))?|mime_header_decode|msgno|num_(msg|recent)|open|ping|qprint|renamemailbox|reopen|rfc822_(parse_(adrlist|headers)|write_address)|savebody|scanmailbox|search|set(acl|flag_full|_quota)|sort|status|subscribe|thread|timeout|uid|undelete|unsubscribe|utf(7_(de|en)code|8))|implode|import_request_variables|in_array|include(_once)?|inclued_get_data|inet_(ntop|pton)|ingres_(autocommit(_state)?|charset|close|commit|connect|cursor|err(or|no|sqlstate)|escape_string|execute|fetch_(array|object|proc_return|row)|field_(length|name|nullable|precision|scale|type)|free_result|next_error|num_(fields|rows)|pconnect|prepare|query|result_seek|rollback|set_environment|unbuffered_query)|ini_(alter|get(_all)?|restore|set)|inotify_(add_watch|init|queue_len|read|rm_watch)|interface_exists|intl_(error_name|get_error_(code|message)|is_failure)|intval|ip2long|iptc(embed|parse)|is(set|_(a(rray)?|binary|bool|buffer|callable|dir|double|executable|file|(in)?finite|float|int(eger)?|link|long|nan|null|numeric|object|readable|real|resource|scalar|soap_fault|string|subclass_of|unicode|uploaded_file|writ(e)?able))|iterator_(apply|count|to_array)|java_last_exception_(clear|get)|jd(dayofweek|monthname|to(french|gregorian|jewish|julian|unix))|jewishtojd|join|jpeg2wbmp|json_((de|en)code|last_error)|juliantojd|kadm5_((chpass|create|delete|modify)_principal|destroy|flush|get_(policies|principal(s)?)|init_with_password)|key|k(r)?sort)\b/g,
		    css: 'php-function functions' },

		// functions l-m
		{ regex: /\b(?:lcfirst|lcg_value|lch(grp|own)|ldap_(8859_to_t61|add|(un)?bind|close|compare|connect|count_entries|delete|dn2ufn|err(or|2str|no)|explode_dn|first_(attribute|entry|reference)|free_result|get_(attributes|dn|entries|option|values(_len)?)|list|mod(ify|_(add|del|replace))|next_(attribute|entry|reference)|parse_(reference|result)|read|rename|sasl_bind|search|set_(option|rebind_proc)|sort|start_tls|t61_to_8859)|lengthexception|levenshtein|libxml(error|_((clear|use_internal)_errors|get_(errors|last_error)|set_streams_context))|limititerator|link(info)?|list|locale(conv|_(g|s)et_default)?|localtime|log(icexception|10|1p)?|long2ip|lstat|ltrim|lzf_((de)?compress|optimized_for)|m_(checkstatus|completeauthorizations|connect(ionerror)?|deletetrans|destroy(conn|engine)|get(cell(bynum)?|commadelimited|header)|init(conn|engine)|iscommadelimited|maxconntimeout|monitor|num(columns|rows)|parsecommadelimited|response(keys|param)|returnstatus|set(blocking|dropfile|ip|ssl(_(cafile|files))?|timeout)|sslcert_gen_hash|trans(actionssent|inqueue|keyval|new|send)|uwait|validateidentifier|verify(connection|sslcert))|mail(parse_(determine_best_xfer_encoding|msg_(create|extract_(part|(whole_)?part_file)?|free|get_(part(_data)?|structure)|parse(_file)?)|rfc822_parse_addresses|stream_encode|uudecode_all))?|main|max(db_(affected_rows|autocommit|bind_(param|result)|change_user|character_set_name|client_encoding|close(_long_data)?|commit|connect(_err(or|no))?|data_seek|debug|disable_(reads_from_master|rpl_parse)|dump_debug_info|embedded_connect|enable_(reads_from_master|rpl_parse)|err(or|no)|escape_string|execute|fetch(_(array|assoc|field(s|_direct)?|lengths|object|row))?|field_(count|seek|tell)|free_result|get_(client_(info|version)|host_info|metadata|proto_info|server_(info|version))|info|init|insert_id|kill|master_query|more_results|multi_query|next_result|num_(fields|rows)|options|param_count|ping|prepare|query|real_(connect|escape_string|query)|report|rollback|rpl_(parse_enabled|probe|query_type)|select_db|send_(long_data|query)|server_(end|init)|set_opt|sqlstate|ssl_set|stat|stmt_(affected_rows|bind_(param|result)|close(_long_data)?|data_seek|err(or|no)|execute|fetch|free_result|init|num_rows|param_count|prepare|reset|result_metadata|send_long_data|sqlstate|store_result)|store_result|thread_(id|safe)|use_result|warning_count))?|mb_(check_encoding|convert_(case|encoding|kana|variables)|(de|en)code_(mimeheader|numericentity)|detect_(encoding|order)|ereg(i(_replace)?|_(match|replace|search(_(get(pos|regs)?|init|(set)?pos|regs))?))?|get_info|http_(in|out)put|internal_encoding|language|list_encodings|output_handler|parse_str|preferred_mime_name|regex_(encoding|set_options)|send_mail|split|str(cut|imwidth|istr|len|(r)?(i)?pos|r(i)?chr|str|to(lower|upper)|width)|sub(stitute_character|str(_count)?))|mcrypt_(cbc|cfb|create_iv|(de|en)crypt|ecb|enc_(get_(algorithms_name|(block|iv|key)_size|modes_name|supported_key_sizes)|is_block_(algorithm(_mode)?|mode)|self_test)|generic(_(deinit|end|init))?|get_((block|iv|key)_size|cipher_name)|list_(algorithms|modes)|module_(close|get_(algo_(block|key)_size|supported_key_sizes)|is_block_(algorithm(_mode)?|mode)|open|self_test)|ofb)|md5(_file)?|mdecrypt_generic|memcache_debug|memory_get_(peak_)?usage|metaphone|method_exists|mhash(_(count|get_(block_size|hash_name)|keygen_s2k))?|microtime|mime_content_type|min|ming_(keypress|set(cubicthreshold|scale|swfcompression)|use(constants|swfversion))|mk(dir|time)|money_format|move_uploaded_file|mqseries_(back|begin|close|cmit|conn(x)?|disc|get|inq|open|put(1)?|set|strerror)|msession_(connect|count|create|destroy|disconnect|find|(g|s)et(_(array|data))?|inc|list(var)?|lock|plugin|randstr|timeout|uniq|unlock)|msg_(((g|s)et|stat)_queue|queue_exists|receive|remove_queue|send)|msql(_(affected_rows|close|connect|create(_)?db|data_seek|db(name|_query)?|drop_db|error|fetch_(array|field|object|row)|field(_seek|(_)?(flags|len|name|table|type))|free_result|list_(dbs|fields|tables)|num(_)?(fields|rows)|pconnect|query|regcase|result|select_db|tablename))?|mssql_(bind|close|connect|data_seek|execute|fetch_(array|assoc|batch|field|object|row)|field_(length|name|seek|type)|free_(result|statement)|get_last_message|guid_string|init|min_(error|message)_severity|next_result|num_(fields|rows)|pconnect|query|result|rows_affected|select_db)|mt_(getrandmax|(s)?rand)|mysql_(affected_rows|change_user|client_encoding|close|connect|(create|drop|select)_db|data_seek|db_(name|query)|err(or|no)|escape_string|fetch_(array|assoc|field|lengths|object|row)|field_(flags|len|name|seek|table|type)|free_result|get_(client|host|proto|server)_info|info|insert_id|list_(dbs|fields|processes|tables)|num_(fields|rows)|pconnect|ping|query|real_escape_string|result|set_charset|stat|tablename|thread_id|unbuffered_query)|mysqli_(bind_(param|result)|client_encoding|(dis|en)able_(reads_from_master|rpl_parse)|driver|escape_string|execute|fetch|get_metadata|master_query|param_count|report|result|rpl_(parse_enabled|probe|query_type)|send_(long_data|query)|set_opt|slave_query|stmt))\b/g,
		    css: 'php-function functions' },

		// functions n-o
		{ regex: /\b(?:nat(case)?sort|ncurses_(add(ch|(ch)?(n)?str)|assume_default_colors|attr(off|on|set)|baudrate|beep|bkgd(set)?|border|bottom_panel|can_change_color|cbreak|clear|clrto(bot|eol)|color_(content|set)|curs_set|def(ine_key|_(prog|shell)_mode)|del(ay_output|ch|eteln|win|_panel)|doupdate|(echo|erase)(char)?|end|filter|flash|flushinp|get(ch|maxyx|mouse|yx)|halfdelay|has_(colors|ic|il|key)|hide_panel|hline|inch|init(_(color|pair))?|ins(ertln|ch|delln|str|tr)|isendwin|key(ok|pad)|killchar|longname|meta|mouse(interval|mask|_trafo)|move(_panel)?|mv(add(ch|(ch)?(n)?str)|cur|delch|getch|hline|inch|vline|waddstr)|napms|new(pad|win|_panel)|nl|no(cbreak|echo|nl|qiflush|raw)|pair_content|panel_(above|below|window)|p(nout)?refresh|putp|qiflush|raw|refresh|replace_panel|reset_(prog|shell)_mode|(res|sav)etty|scr(l|_(dump|init|restore|set))|show_panel|slk_(attr(off|on|set)?|clear|color|init|(nout)?refresh|restore|set|touch)|stand(end|out)|start_color|term(attrs|name)|timeout|top_panel|typeahead|unget(ch|mouse)|update_panels|use_(default_colors|env|extended_names)|vidattr|vline|w(add(ch|str)|attr(off|on|set)|border|clear|color_set|erase|getch|hline|mouse_trafo|move|(nout)?refresh|stand(end|out)|vline))|newt_(bell|button(_bar)?|centered_window|checkbox(_(get_value|set_(flags|value)|tree(_((add|find)_item|get_(current|entry_value|(multi_)?selection)|multi|set_(current|entry(_value)?|width)))?))?|clear_key_buffer|cls|compact_button|component_(add_callback|takes_focus)|create_grid|cursor_(off|on)|delay|draw_(form|root_text)|entry(_(get_value|set(_(filter|flags))?))?|finished|form(_(add_(component(s)?|hot_key)|destroy|get_current|run|set_(background|height|size|timer|width)|watch_fd))?|get_screen_size|grid_(add_components_to_form|basic_window|free|get_size|(h|v)_(close_)?stacked|place|set_field|simple_window|wrapped_window(_at)?)|init|label(_set_text)?|listbox(_(append_entry|clear(_selection)?|delete_entry|get_(current|selection)|insert_entry|item_count|select_item|set_(current(_by_key)?|data|entry|width)))?|listitem(_(get_data|set))?|open_window|pop_(help_line|window)|push_help_line|radio(button|_get_current)|redraw_help_line|reflow_text|refresh|resize_screen|resume|run_form|scale(_set)?|scrollbar_set|set_(help|suspend)_callback|suspend|textbox(_(get_num_lines|reflowed|set_(height|text)))?|vertical_scrollbar|wait_for_key|win_(choice|entries|menu|message(v)?|ternary))|next|ngettext|nl2br|nl_langinfo|normalizer|notes_(body|(copy|drop)_db|create_(db|note)|find_note|header_info|list_msgs|mark_(un)?read|nav_create|search|unread|version)|nsapi_((request|response)_headers|virtual)|nthmac|number_format|numberformatter|oauth_(get_sbs|urlencode)|ob_(clean|deflatehandler|end_(clean|flush)|etaghandler|flush|get_(clean|contents|flush|length|level|status)|gzhandler|iconv_handler|implicit_flush|inflatehandler|list_handlers|start|tidyhandler)|oci(bindbyname|cancel|closelob|coll(append|assign(elem)?|getelem|max|size|trim)|column(isnull|name|precision|scale|size|type(raw)?)|commit|definebyname|error|execute|fetch(into|statement)?|free(collection|cursor|desc|statement)|internaldebug|loadlob|log(off|on)|new(collection|cursor|descriptor)|nlogon|numcols|parse|plogon|result|rollback|rowcount|savelob(file)?|serverversion|setprefetch|statementtype|write(lobtofile|temporarylob)|_(bind_(array_)?by_name|cancel|close|commit|connect|define_by_name|error|execute|fetch(_(all|array|assoc|object|row))?|field_(is_null|name|precision|scale|size|type(_raw)?)|free_statement|internal_debug|lob_is_equal|new_(collection|connect|cursor|descriptor)|num_(fields|rows)|parse|password_change|pconnect|result|rollback|server_version|set_prefetch|statement_type))|octdec|odbc_(autocommit|binmode|close(_all)?|column(s|privileges)|commit|connect|cursor|data_source|do|error(msg)?|exec(ute)?|fetch_(array|into|object|row)|field_(len|name|num|precision|scale|type)|foreignkeys|free_result|gettypeinfo|longreadlen|next_result|num_(fields|rows)|pconnect|prepare|primarykeys|procedure(s|columns)|result(_all)?|rollback|setoption|specialcolumns|statistics|table(s|privileges))|openal_(buffer_(create|data|destroy|get|loadwav)|context_(create|current|destroy|process|suspend)|device_(close|open)|listener_(g|s)et|source_(create|destroy|get|pause|play|rewind|set|stop)|stream)|open(dir|log)|openssl_(csr_(export(_to_file)?|get_(public_key|subject)|new|sign)|error_string|free_key|get_(private|public)key|open|pkcs12_(export(_to_file)?|read)|pkcs7_((de|en)crypt|sign|verify)|pkey_(export(_to_file)?|free|get_(details|private|public)|new)|(private|public)_(de|en)crypt|seal|sign|verify|x509_(check(purpose|_private_key)|export(_to_file)?|free|parse|read))|ord|output_(add_rewrite_var|reset_rewrite_vars)|overload|override_function|ovrimos_(close|commit|connect|cursor|exec(ute)?|fetch_(into|row)|field_(len|name|num|type)|free_result|longreadlen|num_(fields|rows)|prepare|result(_all)?|rollback))\b/g,
		    css: 'php-function functions' },

		// functions p-r
		{ regex: /\b(?:pack|parentiterator|parse(kit_(compile_(file|string)|func_arginfo)|_(ini_(file|string)|str|url))|passthru|pathinfo|pclose|pcntl_(alarm|exec|fork|(g|s)etpriority|signal(_dispatch)?|sig(procmask|timedwait|waitinfo)|wait(pid)?|w(exitstatus|if(exited|signaled|stopped)|(stop|term)sig))|pfsockopen|pg_(affected_rows|cancel_query|client_encoding|close|connect(ion_(busy|reset|status))?|convert|copy_(from|to)|dbname|delete|end_copy|escape_bytea|escape_string|execute|fetch_(all(_columns)?|array|assoc|object|result|row)|field_(is_null|name|num|prtlen|size|table|type(_oid)?)|free_result|get_(notify|pid|result)|host|insert|last_(error|notice|oid)|lo_(close|create|(ex|im)port|open|read(_all)?|seek|tell|unlink|write)|meta_data|num_(fields|rows)|options|parameter_status|pconnect|ping|port|prepare|put_line|query(_params)?|result_(error(_field)?|seek|status)|select|send_(execute|prepare|query(_params)?)|set_(client_encoding|error_verbosity)|trace|transaction_status|tty|unescape_bytea|untrace|update|version)|php(credits|info|version|_(check_syntax|ini_(loaded_file|scanned_files)|logo_guid|sapi_name|strip_whitespace|uname))|pi|png2wbmp|popen|pos(ix_(access|ctermid|get(cwd|(eg|eu|g|grg|pg|p|pp|pwu|s|u)id|grnam|groups|login|pgrp|pwnam|rlimit|_last_error)|initgroups|isatty|kill|mk(fifo|nod)|set(eg|eu|g|pg|s|u)id|strerror|times|(tty|u)name))?|pow|preg_(filter|grep|last_error|match(_all)?|quote|replace(_callback)?|split)|prev|print(f|_r)?|printer_(abort|close|(create|delete)_(brush|dc|font|pen)|draw_(bmp|chord|elipse|line|pie|rectangle|roundrect|text)|(end|start)_(doc|page)|get_option|list|logical_fontheight|open|select_(brush|font|pen)|set_option|write)|proc_(close|get_status|nice|open|terminate)|property_exists|ps_(add_(bookmark|(launch|local|pdf|web)link|note)|arc(n)?|begin_(page|pattern|template)|circle|clip|close(path(_stroke)?|_image)?|continue_text|curveto|delete|end_(page|pattern|template)|fill(_stroke)?|findfont|get_(buffer|parameter|value)|hyphenate|include_file|lineto|makespotcolor|moveto|new|open_(file|image(_file)?|memory_image)|place_image|rect|restore|rotate|save|scale|set(color|dash|flat|font|gray|line(cap|join|width)|miterlimit|overprintmode|polydash|_(border_(color|dash|style)|info|parameter|text_pos|value))|shading(_pattern)?|shfill|show(2|_(boxed|xy(2)?))?|string(width|_geometry)|stroke|symbol(_(name|width))?|translate)|pspell_(add_to_(personal|session)|check|clear_session|config_(create|(data|dict)_dir|ignore|mode|personal|repl|runtogether|save_repl)|new(_(config|personal))?|save_wordlist|store_replacement|suggest)|putenv|px_(close|(create|open)_fp|date2string|delete(_record)?|get_(field|info|parameter|record|schema|value)|(insert|put|retrieve)_record|new|num(fields|records)|set_(blob_file|parameter|tablename|targetencoding|value)|timestamp2string|update_record)|qdom_(error|tree)|quoted_printable_(de|en)code|quotemeta|rad2deg|radius_(acct_open|add_server|auth_open|close|config|create_request|cvt_(addr|int|string)|demangle(_mppe_key)?|get_(vendor_)?attr|put_(vendor_)?(addr|attr|int|string)|request_authenticator|send_request|server_secret|strerror)|rand|range|rar_(close|entry_get|list|open)|rawurl(de|en)code|read(dir|(gz)?file|line(_(add_history|callback_(handler_(install|remove)|read_char)|clear_history|completion_function|info|list_history|on_new_line|(read|write)_history|redisplay))?|link|_exif_data)|realpath|recode(_(file|string))?|register_(shutdown|tick)_function|rename(_function)?|require(_once)?|reset|restore_((error|exception)_handler|include_path)|return|rewind(dir)?|rmdir|round|rpm_(close|get_tag|is_valid|open|version)|rsort|rtrim|runkit_(class_(adopt|emancipate)|constant_(add|redefine|remove)|(function|method)_(add|copy|redefine|remove|rename)|import|lint(_file)?|return_value_used|sandbox_output_handler|superglobals))\b/g,
		    css: 'php-function functions' },

		// functions s
		{ regex: /\b(?:scandir|sem_(acquire|get|release|remove)|serialize|session_(cache_(expire|limiter)|commit|(de|en)code|destroy|get_cookie_params|id|is_registered|(module_)?name|pgsql_((add|get)_error|(g|s)et_field|reset|status)|regenerate_id|(un)?register|save_path|set_(cookie_params|save_handler)|start|unset|write_close)|set((raw)?cookie|locale|type|_((error|exception)_handler|file_buffer|include_path|magic_quotes_runtime|time_limit))|sha1(_file)?|shell_exec|shm_(attach|detach|(get|put)_var|remove(_var)?)|shmop_(close|delete|open|read|size|write)|show_source|shuffle|signeurlpaiement|similar_text|simplexml_(import_dom|load_(file|string))|sin(h)?|sizeof|sleep|snmp(get(next)?|realwalk|set|walk(oid)?|_(get_(quick_print|valueretrieval)|read_mib|set_(enum_print|oid_(numeric_print|output_format)|quick_print|valueretrieval)))|socket_(accept|bind|clear_error|close|connect|create(_(listen|pair))?|get((peer|sock)name|_(option|status))|last_error|listen|read|recv(from)?|select|send(to)?|set_(block(ing)?|nonblock|option|timeout)|shutdown|strerror|write)|sort|soundex|spl(bool|doublylinkedlist|enum|fileinfo|fixedarray|float|(max|min)?heap|int|it(i)?|objectstorage|(priority)?queue|stack|string|_(autoload(_(call|extensions|functions|(un)?register))?|classes|object_hash))|sprintf|sql_regcase|sqlite_(array_query|busy_timeout|changes|close|column|create_(aggregate|function)|current|(error|escape)_string|exec|factory|fetch_(all|array|column_types|object|single|string)|field_name|has_(more|prev)|key|last_(error|insert_rowid)|lib(encoding|version)|next|num_(fields|rows)|(p)?open|prev|((single|unbuffered)_)?query|rewind|seek|udf_(de|en)code_binary|valid)|sqrt|srand|sscanf|ssh2_(auth_(hostbased_file|none|password|pubkey_file)|connect|exec|fetch_stream|fingerprint|methods_negotiated|publickey_(add|init|list|remove)|scp_(recv|send)|sftp(_(lstat|(mk|rm)dir|(read|sym|un)link|realpath|rename|stat))?|shell|tunnel)|stat|stats_(absolute_deviation|cdf_(beta|(negative_)?binomial|cauchy|chisquare|exponential|f|gamma|laplace|logistic|noncentral_(chisquare|f)|poisson|t|uniform|weibull)|covariance|den_uniform|dens_(beta|cauchy|chisquare|exponential|f|gamma|laplace|logistic|negative_binomial|normal|pmf_(binomial|hypergeometric|poisson)|t|weibull)|harmonic_mean|kurtosis|rand_(gen_(beta|chisquare|exponential|f|funiform|gamma|ibinomial(_negative)?|int|ipoisson|iuniform|noncenral_chisquare|noncentral_(f|t)|normal|t)|get_seeds|phrase_to_seeds|ranf|setall)|skew|standard_deviation|stat_(binomial_coef|correlation|gennch|independent_t|innerproduct|noncentral_t|paired_t|percentile|powersum)|variance)|str(casecmp|chr|cmp|coll|cspn|_(getcsv|(i)?replace|pad|repeat|rot13|shuffle|split|word_count))|stream(wrapper|_(bucket_(append|make_writeable|new|prepend)|context_(create|get_(default|options|params)|set_(default|option|params))|copy_to_stream|encoding|filter_(append|prepend|register|remove)|get_(contents|filters|line|meta_data|transports|wrappers)|is_local|notification_callback|register_wrapper|resolve_include_path|select|set_(blocking|timeout|write_buffer)|socket_(accept|client|enable_crypto|get_name|pair|recvfrom|sendto|server|shutdown)|supports_lock|wrapper_((un)?register|restore)))|strftime|strip((c)?slashes|os|_tags)|str((i)?str|len|n(at)?(case)?cmp|pbrk|pos|ptime|rchr|rev|ripos|rpos|spn|to(k|lower|time|upper)|tr|val)|substr(_(compare|count|replace))?|svn_(add|auth_(g|s)et_parameter|blame|cat|checkout|cleanup|client_version|commit|diff|export|fs_(abort_txn|apply_text|begin_txn2|change_node_prop|check_path|contents_changed|copy|delete|dir_entries|file_(contents|length)|(is|make)_(dir|file)|node_(created_rev|prop)|props_changed|revision_(prop|root)|txn_root|youngest_rev)|import|log|ls|mkdir|repos_(create|fs(_(begin_txn_for_commit|commit_txn))?|hotcopy|open|recover)|revert|status|update)|swf_(action(geturl|goto(frame|label)|(next|prev)frame|play|settarget|stop|togglequality|waitforframe)|add(buttonrecord|color)|closefile|define(bitmap|font|line|poly|rect|text)|end(button|doaction|shape|symbol)|font(size|slant|tracking)|get((bitmap|font)info|frame)|labelframe|lookat|modifyobject|mulcolor|nextid|oncondition|openfile|ortho(2)?|perspective|placeobject|polarview|popmatrix|posround|pushmatrix|removeobject|rotate|scale|set(font|frame)|shape(arc|curveto(3)?|fill(bitmap(clip|tile)|off|solid)|line(solid|to)|moveto)|showframe|start(button|doaction|shape|symbol)|textwidth|translate|viewport)|swish(result(s_(get(parsed|removedstop)words|(next|seek)result)|_(getmetalist|stem))|_(construct|get(meta|property)list|prepare|query)|search_(execute|resetlimit|set(limit|phrasedelimiter|sort|structure)))|sybase_(affected_rows|close|connect|data_seek|deadlock_retry_count|fetch_(array|assoc|field|object|row)|field_seek|free_result|get_last_message|min_(client|error|message|server)_severity|num_(fields|rows)|pconnect|query|result|select_db|set_message_handler|unbuffered_query)|symlink|sys_get(loadavg|_temp_dir)|sys(tem|log))\b/g,
		    css: 'php-function functions' },

		// functions t-z
		{ regex: /\b(?:tan(h)?|tcpwrap_check|tempnam|textdomain|tidy(node|_((access|config|error)_count|diagnose|get_(error_buffer|output)|(load|reset|save)_config|set(opt|_encoding)|warning_count))?|time(zone_((abbreviations|identifiers)_list|(location|offset|transitions|version)_get|name_(from_abbr|get)|open)|_(nanosleep|sleep_until))?|tmpfile|token_(get_all|name)|touch|traversable|trigger_error|trim|uasort|ucfirst|ucwords|udm_(add_search_limit|alloc_agent(_array)?|api_version|cat_(list|path)|check_(charset|stored)|clear_search_limits|close_stored|crc32|err(or|no)|find|free_(agent|ispell_data|res)|get_(doc_count|res_(field|param))|hash32|load_ispell_data|open_stored|set_agent_param)|uksort|umask|(underflow|unexpectedvalue)exception|unicode_((de|en)code|(g|s)et_(error_mode|subst_char))|uniqid|unixtojd|unlink|unpack|unregister_tick_function|unserialize|unset|url(de|en)code|use_soap_error_handler|user_error|usleep|usort|utf8_(de|en)code|var_(dump|export)|variant_(abs|add|and|cast|cat|cmp|date_(from|to)_timestamp|div|eqv|fix|get_type|idiv|imp|int|mod|mul|neg|not|or|pow|round|set(_type)?|sub|xor)|version_compare|vfprintf|virtual|vpopmail_(add_((alias_)?domain(_ex)?|user)|alias_(add|del(_domain)?|get(_all)?)|auth_user|del_(domain(_ex)?|user)|error|passwd|set_user_quota)|v(s)?printf|w32api_((def|init_d)type|(invoke|register)_function|set_call_method)|wddx_(add_vars|deserialize|packet_(end|start)|serialize_(value|vars)|unserialize)|win32_((create|delete)_service|get_last_control_message|ps_(list_procs|stat_(mem|proc))|(query|set)_service_status|start_service(_ctrl_dispatcher)?|stop_service)|wordwrap|xattr_(get|list|remove|set|supported)|xdiff_((file|string)_(bdiff(_size)?|bpatch|(diff|patch)(_binary)?|merge3|rabdiff))|xml_(error_string|get_(current_(byte_index|(column|line)_number)|error_code)|parse(r_(create(_ns)?|free|(g|s)et_option)|_into_struct)?|set_((character_data|default|element|(end_namespace|notation|start_namespace|unparsed_entity)_decl|external_entity_ref|processing_instruction)_handler|object))|xmlrpc_((de|en)code(_request)?|get_type|is_fault|parse_method_descriptions|server_(add_introspection_data|call_method|create|destroy|register_(introspection_callback|method))|set_type)|xpath_(eval(_expression)?|new_context|register_ns(_auto)?)|xptr_(eval|new_context)|xslt_(backend_(info|name|version)|create|err(or|no)|free|getopt|process|set_(base|encoding|error_handler|log|object|(sax|scheme)_handler(s)?)|setopt)|yaz_(addinfo|ccl_(conf|parse)|close|connect|database|element|err(or|no)|es(_result)?|(g|s)et_option|hits|itemorder|present|range|record|scan(_result)?|schema|search|sort|syntax|wait)|yp_(all|cat|err(no|_string)|first|get_default_domain|master|match|next|order)|zend_(logo_guid|thread_id|version)|zip_(close|entry_(close|compress(edsize|ionmethod)|filesize|name|open|read)|open|read)|zlib_get_coding_type)\b/g,
		    css: 'php-function functions' },

		{ regex: /\w+(?=\()/g,
		    css: 'php-custfunc functions' }
	];

	this.forHtmlScript({
		left: /(&lt;|<)\?(php|=)?/gi,
		right: /\?(&gt;|>)/gi
	});
};

SyntaxHighlighter.brushes.Php.prototype = new SyntaxHighlighter.Highlighter();
SyntaxHighlighter.brushes.Php.aliases = ['php'];

