-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathPHOB.php
More file actions
332 lines (316 loc) · 87.1 KB
/
PHOB.php
File metadata and controls
332 lines (316 loc) · 87.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
<?php
/**
* PHOB Class
*
* A utility class to interact with the PHOB PHP extension, ensuring it is loaded
* and providing a clean interface to its core functions. If the extension or its
* functions are unavailable, it provides clear installation instructions.
*
* @package PHOB
* @version 3.2.1
* @link https://github.com/sakibweb/PHOB
*/
class PHOB {
/**
* Checks if the PHOB extension is loaded and active.
* If active, returns true. Otherwise, throws a fatal error.
*
* @return bool True if the PHOB extension is active.
* @throws Error If the PHOB extension is not loaded or not active.
*/
private static function ext(): bool {
if (extension_loaded('phob')) {
return true;
} else {
$errorMessage = "Fatal Error: The PHOB extension is not installed or not active. "
. "This application requires the PHOB extension to function correctly. "
. "Please install and activate it. "
. "Follow the installation guide at: https://github.com/sakibweb/PHOB";
throw new Error($errorMessage);
}
}
/**
* Protect a PHP file by generating a secure, obfuscated output file
*
* @param string $inputPath Path to the input PHP file
* @param string $outputPath Path for the protected output file
* @param array $config Configuration array (key, pass, license, device, expiry)
* @param array|null $skipList Optional array of files to skip
* @return bool True on success, false on failure
* @throws RuntimeException If PHOB is not initialized
*/
public static function build(string|array $input, string|array $output, array $skip = [], array $skipName = [], array $customName = [], array $config = []) {
if (self::ext() === true) {
$config["key"] = (isset($config["key"])) ? $config["key"] : "";
$config["pass"] = (isset($config["pass"])) ? $config["pass"] : "";
$config["license"] = (isset($config["license"])) ? $config["license"] : "";
$config["device"] = (isset($config["device"])) ? $config["device"] : "0000000000000000";
$config["expiry"] = (isset($config["expiry"])) ? $config["expiry"] : "05/05/2050";
$config["obfuscate"] = (isset($config["obfuscate"]) && is_bool($config["obfuscate"])) ? $config["obfuscate"] : true;
$config["minify"] = (isset($config["minify"]) && is_bool($config["minify"])) ? $config["minify"] : true;
if ($config["obfuscate"] === true || $config["minify"] === true) {
$random_name = $config["obfuscate"];
$defaultSkipList = [
'_GET','_POST','_REQUEST','_COOKIE','_FILES','_SERVER','_ENV','_SESSION','GLOBALS','http_response_header','argc','argv','__LINE__','__FILE__','__DIR__','__FUNCTION__','__CLASS__','__TRAIT__','__METHOD__','__NAMESPACE__','__halt_compiler','__construct','__destruct','__call','__callStatic','__get','__set','__isset','__unset','__sleep','__wakeup','__serialize','__unserialize','__toString','__invoke','__set_state','__clone','__debugInfo','self','static','parent','this','PHP_VERSION','PHP_OS','PHP_EOL','PHP_INT_MAX','PHP_INT_MIN','PHP_FLOAT_MAX','PHP_FLOAT_MIN','PHP_FLOAT_EPSILON','PHP_BINARY','PHP_BINDIR','PHP_CONFIG_FILE_PATH','PHP_CONFIG_FILE_SCAN_DIR','PHP_DATADIR','PHP_EXTENSION_DIR','PHP_LIBDIR','PHP_LOCALSTATEDIR','PHP_OUTPUT_HANDLER_CONT','PHP_OUTPUT_HANDLER_END','PHP_OUTPUT_HANDLER_START','PHP_PREFIX','PHP_SHLIB_SUFFIX','PHP_SYSCONFDIR','PHP_SAPI','PHP_DEBUG','PHP_MAXPATHLEN','PHP_ZTS','PHP_VERSION_ID','PHP_MAJOR_VERSION','PHP_MINOR_VERSION','PHP_RELEASE_VERSION','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_STRICT','E_RECOVERABLE_ERROR','E_DEPRECATED','E_USER_DEPRECATED','E_ALL','true','false','null','TRUE','FALSE','NULL','True','False','Null','STDIN','STDOUT','STDERR','require','include','require_once','include_once','exit','die','print','echo','isset','empty','unset','eval','function','class','interface','trait','extends','implements','namespace','use','global','var','const','public','protected','private','abstract','final','clone','new','throw','try','catch','finally','return','break','continue','default','case','switch','if','else','elseif','while','do','for','foreach','as','instanceof','insteadof','yield','match','fn','goto','and','or','xor','array','list','callable','iterable','object','string','int','float','bool','void','mixed','never','define','defined','dirname','basename','strlen','strval','intval','floatval','boolval','file_get_contents','file_put_contents','fopen','fclose','fread','fwrite','fseek','ftell','rewind','feof','fgetc','fgets','fputcsv','fgetcsv','fpassthru','ftruncate','mkdir','rmdir','unlink','file_exists','is_file','is_dir','is_readable','is_writable','is_executable','clearstatcache','chmod','chown','chgrp','rename','copy','realpath','scandir','glob','filesize','filectime','filemtime','fileatime','json_encode','json_decode','serialize','unserialize','base64_encode','base64_decode','urlencode','urldecode','rawurlencode','rawurldecode','parse_url','http_build_query','htmlspecialchars','htmlentities','html_entity_decode','str_replace','preg_replace','preg_match','preg_match_all','preg_split','preg_quote','explode','implode','substr','strpos','strrpos','strtolower','strtoupper','trim','ltrim','rtrim','md5','sha1','hash','hash_hmac','openssl_encrypt','openssl_decrypt','password_hash','password_verify','date','time','strtotime','microtime','mktime','gmdate','gmmktime','checkdate','getdate','date_default_timezone_set','set_time_limit','ignore_user_abort','register_shutdown_function','error_reporting','set_error_handler','restore_error_handler','set_exception_handler','restore_exception_handler','trigger_error','debug_backtrace','debug_print_backtrace','memory_get_usage','memory_get_peak_usage','get_defined_vars','get_defined_constants','get_class','get_parent_class','get_class_methods','get_object_vars','get_class_vars','method_exists','property_exists','class_exists','interface_exists','trait_exists','function_exists','constant','__autoload','spl_autoload_register','spl_autoload_unregister','spl_autoload_functions','spl_autoload_call','class_alias','call_user_func','call_user_func_array','forward_static_call','forward_static_call_array','create_function','func_get_args','func_get_arg','func_num_args','ob_start','ob_get_clean','ob_get_contents','ob_end_clean','ob_flush','flush','header','headers_sent','headers_list','setcookie','setrawcookie','session_start','session_id','session_destroy','session_name','session_save_path','session_set_cookie_params','session_get_cookie_params','session_regenerate_id','session_write_close','session_unset','session_encode','session_decode','session_status','session_cache_limiter','session_cache_expire','rand','mt_rand','lcg_value','getrandmax','random_int','random_bytes','uniqid','shuffle','srand','mt_getrandmax','mt_shuffle','mt_uniqid','str_shuffle','strrev','str_repeat','str_pad','str_word_count','str_split','strchr','strpbrk','strcspn','strcoll','strtok','strnatcmp','strnatcasecmp','strcasecmp','strspn','strrchr','strstr','stristr','exec','system','shell_exec','passthru','popen','proc_open','pcntl_exec','proc_close','proc_terminate','ssh2_connect','ssh2_auth_password','ssh2_exec','ssh2_shell','ssh2_scp_send','ssh2_scp_recv','ssh2_sftp','ssh2_auth_pubkey_file','curl_init','curl_exec','curl_setopt','curl_getinfo','curl_close','curl_errno','curl_error','curl_multi_exec','curl_multi_init','mysqli_connect','mysqli_query','mysqli_fetch_assoc','mysqli_fetch_array','mysqli_num_rows','mysqli_close','mysqli_prepare','mb_strlen','mb_substr','mb_strtolower','mb_strtoupper','mb_convert_encoding','mb_detect_encoding','hash_equals','phpinfo','phpversion','php_uname','php_ini_loaded_file','php_ini_scanned_files','php_sapi_name','phob_build','phob_use','phob_cleanup','phob_deviceID','phob_config','phob_set_config','phob_get_config','phob_set_key','phob_get_key','phob_set_pass','phob_get_pass','phob_set_license','phob_get_license','phob_set_device','phob_get_device','phob_set_expiry','phob_get_expiry','phob_set_obfuscate','phob_get_obfuscate','phob_set_encrypt','phob_get_encrypt','phob_set_minify','phob_get_minify','phob_set_obfuscate_strings','phob_get_obfuscate_strings','phob_set_encrypt_vars','phob_get_encrypt_vars','phob_set_encrypt_strings','phob_get_encrypt_strings','phob_set_encrypt_arrays','phob_get_encrypt_arrays','PHOB','PHOB_VERSION','PHOB_BUILD','PHOB_LICENSE','PHOB_DEVICE','PHOB_EXPIRY','PHOB_OBFUSCATE','PHOB_ENCRYPT','PHOB_MINIFY','PHOB_OBFUSCATE_STRINGS','PHOB_ENCRYPT_VARS','PHOB_ENCRYPT_STRINGS','array_merge','array_diff','array_intersect','array_keys','array_values','array_push','array_pop','array_shift','array_unshift','array_slice','array_splice','array_map','array_filter','array_reduce','array_walk','array_key_exists','in_array','count','sizeof','sort','rsort','asort','arsort','ksort','krsort','usort','uasort','uksort','is_array','is_bool','is_float','is_double','is_int','is_integer','is_long','is_null','is_numeric','is_object','is_resource','is_string','is_scalar','is_callable','is_iterable','is_countable','is_subclass_of','is_a','htmlspecialchars_decode','strtr','str_ireplace','Exception',
'Error','Throwable','Iterator','IteratorAggregate','Traversable','ArrayAccess','Serializable','Closure','Generator','Countable','JsonSerializable','DateTime','DateTimeImmutable','DateTimeZone','SplFileObject','SplFixedArray','SplStack','SplQueue','SplHeap','SplPriorityQueue','SplObjectStorage','SplDoublyLinkedList','SplFileInfo','SplTempFileObject','phob','PHDB','PHRO','PHRQ','PHDU','PHLS','PHDE','PHLM','PHTP','PHEM','PHJT','PHTR','PHTM','PHED','PHCD','PHVD','PHSD','PHSE','PHCO','declare','enddeclare','endfor','endforeach','endif','endswitch','endwhile','PHP_EXTRA_VERSION','PHP_OS_FAMILY','PHP_INT_SIZE','PHP_FLOAT_DIG','DEFAULT_INCLUDE_PATH','PEAR_INSTALL_DIR','PEAR_EXTENSION_DIR','PHP_MANDIR','PHP_FD_SETSIZE','array_change_key_case','array_chunk','array_column','array_combine','array_count_values','array_diff_assoc','array_diff_key','array_diff_uassoc','array_diff_ukey','array_fill_keys','array_fill','array_flip','array_intersect_assoc','array_intersect_key','array_intersect_uassoc','array_intersect_ukey','array_is_list','array_key_first','array_key_last','array_merge_recursive','array_multisort','array_pad','array_product','array_rand','array_replace_recursive','array_replace','array_reverse','array_search','array_sum','array_udiff_assoc','array_udiff_uassoc','array_udiff','array_uintersect_assoc','array_uintersect_uassoc','array_uintersect','array_unique','array_walk_recursive','compact','current','each','end','extract','key_exists','key','natcasesort','natsort','next','pos','prev','range','reset','addcslashes','addslashes','bin2hex','chop','chr','chunk_split','convert_uudecode','convert_uuencode','count_chars','crc32','crypt','fprintf','get_html_translation_table','hex2bin','join','lcfirst','levenshtein','localeconv','md5_file','metaphone','money_format','nl_langinfo','nl2br','number_format','ord','parse_str','printf','quoted_printable_decode','quoted_printable_encode','quotemeta','setlocale','sha1_file','similar_text','soundex','sprintf','sscanf','str_contains','str_ends_with','str_getcsv','str_rot13','str_starts_with','strcmp','strip_tags','stripcslashes','stripos','stripslashes','strncasecmp','strncmp','strripos','substr_compare','substr_count','substr_replace','ucfirst','ucwords','vfprintf','vprintf','vsprintf','wordwrap','debug_zval_dump','doubleval','get_resource_id','get_resource_type','gettype','import_request_variables','is_real','print_r','settype','var_dump','var_export','abs','acos','acosh','asin','asinh','atan2','atan','atanh','base_convert','bindec','ceil','cos','cosh','decbin','dechex','decoct','deg2rad','exp','expm1','floor','fmod','hexdec','hypot','intdiv','is_finite','is_infinite','is_nan','log10','log1p','log','max','min','mt_srand','octdec','pi','pow','rad2deg','round','sin','sinh','sqrt','tan','tanh','date_add','date_create_from_format','date_create_immutable_from_format','date_create_immutable','date_create','date_date_set','date_default_timezone_get','date_diff','date_format','date_get_last_errors','date_interval_create_from_date_string','date_interval_format','date_isodate_set','date_modify','date_offset_get','date_parse_from_format','date_parse','date_sub','date_sun_info','date_sunrise','date_sunset','date_time_set','date_timestamp_get','date_timestamp_set','date_timezone_get','date_timezone_set','gettimeofday','gmstrftime','idate','localtime','strftime','strptime','timezone_abbreviations_list','timezone_identifiers_list','timezone_location_get','timezone_name_from_abbr','timezone_name_get','timezone_offset_get','timezone_open','timezone_transitions_get','timezone_version_get','DateTimeInterface','DateInterval','DatePeriod','delete','disk_free_space','disk_total_space','diskfreespace','fflush','fgetss','file','filegroup','fileinode','fileowner','fileperms','filetype','flock','fnmatch','fputs','fscanf','fstat','is_link','is_uploaded_file','is_writeable','lchgrp','lchown','link','linkinfo','lstat','move_uploaded_file','parse_ini_file','parse_ini_string','pathinfo','pclose','readfile','readlink','realpath_cache_get','realpath_cache_size','set_file_buffer','stat','symlink','tempnam','tmpfile','touch','umask','curl_setopt_array','curl_copy_handle','curl_multi_add_handle','curl_multi_remove_handle','curl_multi_select','curl_multi_getcontent','curl_multi_info_read','curl_multi_close','curl_multi_errno','curl_multi_strerror','curl_share_init','curl_share_setopt','curl_share_close','curl_share_errno','curl_share_strerror','curl_version','curl_escape','curl_unescape','curl_pause','curl_reset','curl_file_create','CurlHandle','CurlMultiHandle','CurlShareHandle','CURLFile','PDO','PDOStatement','PDOException','mysqli_connect_errno','mysqli_connect_error','mysqli_multi_query','mysqli_fetch_object','mysqli_fetch_row','mysqli_affected_rows','mysqli_insert_id','mysqli_error','mysqli_errno','mysqli_real_escape_string','mysqli_stmt_init','mysqli_stmt_bind_param','mysqli_stmt_execute','mysqli_stmt_fetch','mysqli_stmt_close','mysqli_free_result','mysqli','mysqli_stmt','mysqli_result','mysqli_driver','mysqli_warning','mysqli_sql_exception','json_last_error','json_last_error_msg','JSON_THROW_ON_ERROR','simplexml_load_file','simplexml_load_string','simplexml_import_dom','SimpleXMLElement','SimpleXMLIterator','DOMAttr','DOMCdataSection','DOMCharacterData','DOMComment','DOMDocument','DOMDocumentFragment','DOMDocumentType','DOMElement','DOMEntity','DOMEntityReference','DOMException','DOMImplementation','DOMNamedNodeMap','DOMNode','DOMNodeList','DOMNotation','DOMProcessingInstruction','DOMText','DOMXPath','session_abort','session_commit','session_create_id','session_gc','session_module_name','session_register_shutdown','session_reset','session_set_save_handler','SessionHandler','SessionHandlerInterface','SessionIdInterface','SessionUpdateTimestampHandlerInterface','password_algos','password_get_info','password_needs_rehash','PASSWORD_BCRYPT','PASSWORD_ARGON2I','PASSWORD_ARGON2ID','PASSWORD_DEFAULT','openssl_random_pseudo_bytes','openssl_cipher_iv_length','openssl_get_cipher_methods','openssl_digest','openssl_get_md_methods','openssl_pbkdf2','preg_filter','preg_grep','preg_last_error_msg','preg_last_error','preg_replace_callback_array','preg_replace_callback','PREG_PATTERN_ORDER','PREG_SET_ORDER','PREG_OFFSET_CAPTURE','PREG_UNMATCHED_AS_NULL','AppendIterator','CachingIterator','DirectoryIterator','FilterIterator','FilesystemIterator','OuterIterator','RecursiveArrayIterator','RecursiveCachingIterator','RecursiveDirectoryIterator','RecursiveFilterIterator','RecursiveIterator','RecursiveIteratorIterator','RecursiveRegexIterator','RecursiveTreeIterator','SeekableIterator','SplObserver','SplSubject','ArrayIterator','ArrayObject','BadFunctionCallException','BadMethodCallException','CallbackFilterIterator','ClosedGeneratorException','DomainException','EmptyIterator','ErrorException','GlobIterator','InfiniteIterator','InvalidArgumentException','LengthException','LimitIterator','LogicException','MultipleIterator','NoRewindIterator','OutOfBoundsException','OutOfRangeException','OverflowException','ParentIterator','RangeException','RegexIterator','RuntimeException','SplMaxHeap','SplMinHeap','UnderflowException','UnexpectedValueException','stdClass','WeakReference','WeakMap','Fiber','error_get_last','error_log','user_error','TypeError','ParseError','ArgumentCountError','ArithmeticError','DivisionByZeroError','AssertionError','ValueError','UnhandledMatchError','ob_clean','ob_end_flush','ob_get_flush','ob_get_length','ob_get_level','ob_get_status','ob_gzhandler','ob_implicit_flush','ob_list_handlers','escapeshellarg','escapeshellcmd','proc_get_status','proc_nice','stream_bucket_append','stream_bucket_make_writeable','stream_bucket_new','stream_bucket_prepend','stream_context_create','stream_context_get_default','stream_context_get_options',
'stream_context_get_params','stream_context_set_default','stream_context_set_option','stream_context_set_params','stream_copy_to_stream','stream_filter_append','stream_filter_prepend','stream_filter_register','stream_filter_remove','stream_get_contents','stream_get_filters','stream_get_line','stream_get_meta_data','stream_get_transports','stream_get_wrappers','stream_is_local','stream_isatty','stream_resolve_include_path','stream_select','stream_set_blocking','stream_set_chunk_size','stream_set_read_buffer','stream_set_timeout','stream_set_write_buffer','stream_socket_accept','stream_socket_client','stream_socket_enable_crypto','stream_socket_get_name','stream_socket_pair','stream_socket_recvfrom','stream_socket_sendto','stream_socket_server','stream_socket_shutdown','stream_supports_lock','stream_wrapper_register','stream_wrapper_restore','stream_wrapper_unregister','get_headers','get_meta_tags','filter_has_var','filter_id','filter_input_array','filter_input','filter_list','filter_var_array','filter_var','FILTER_VALIDATE_EMAIL','FILTER_VALIDATE_URL','FILTER_VALIDATE_IP','FILTER_SANITIZE_STRING','hash_algos','hash_copy','hash_file','hash_final','hash_hkdf','hash_hmac_algos','hash_hmac_file','hash_init','hash_pbkdf2','hash_update_file','hash_update_stream','hash_update','get_defined_functions','register_tick_function','unregister_tick_function','Reflection','ReflectionClass','ReflectionClassConstant','ReflectionEnum','ReflectionEnumUnitCase','ReflectionEnumBackedCase','ReflectionExtension','ReflectionFunction','ReflectionFunctionAbstract','ReflectionGenerator','ReflectionIntersectionType','ReflectionMethod','ReflectionNamedType','ReflectionObject','ReflectionParameter','ReflectionProperty','ReflectionReference','ReflectionAttribute','ReflectionType','ReflectionUnionType','ReflectionVariable','ReflectionZendExtension','Reflector','token_get_all','token_name','mb_check_encoding','mb_convert_case','mb_convert_kana','mb_convert_variables','mb_decode_mimeheader','mb_decode_numericentity','mb_detect_order','mb_encode_mimeheader','mb_encode_numericentity','mb_encoding_aliases','mb_ereg_match','mb_ereg_replace_callback','mb_ereg_replace','mb_ereg_search_getpos','mb_ereg_search_getregs','mb_ereg_search_init','mb_ereg_search_pos','mb_ereg_search_regs','mb_ereg_search_setpos','mb_ereg_search','mb_ereg','mb_eregi_replace','mb_eregi','mb_get_info','mb_http_input','mb_http_output','mb_internal_encoding','mb_language','mb_list_encodings','mb_output_handler','mb_parse_str','mb_preferred_mime_name','mb_regex_encoding','mb_regex_set_options','mb_send_mail','mb_split','mb_str_split','mb_strcut','mb_strimwidth','mb_stripos','mb_stristr','mb_strpos','mb_strrchr','mb_strrichr','mb_strripos','mb_strrpos','mb_strstr','mb_strwidth','mb_substitute_character','mb_substr_count','intlcal_add','intlcal_after','intlcal_before','intlcal_clear','intlcal_create_instance','intlcal_equals','intlcal_field_difference','intlcal_get_actual_maximum','intlcal_get_actual_minimum','intlcal_get_available_locales','intlcal_get_day_of_week_type','intlcal_get_error_code','intlcal_get_error_message','intlcal_get_first_day_of_week','intlcal_get_greatest_minimum','intlcal_get_least_maximum','intlcal_get_locale','intlcal_get_maximum','intlcal_get_minimal_days_in_first_week','intlcal_get_minimum','intlcal_get_now','intlcal_get_repeated_wall_time_option','intlcal_get_skipped_wall_time_option','intlcal_get_time','intlcal_get_time_zone','intlcal_get_type','intlcal_get_weekend_transition','intlcal_in_daylight_time','intlcal_is_equivalent_to','intlcal_is_lenient','intlcal_is_set','intlcal_is_weekend','intlcal_roll','intlcal_set_first_day_of_week','intlcal_set_lenient','intlcal_set_minimal_days_in_first_week','intlcal_set_repeated_wall_time_option','intlcal_set_skipped_wall_time_option','intlcal_set_time','intlcal_set_time_zone','intlcal_set','intlcal_to_date_time','collator_create','collator_compare','collator_get_attribute','collator_set_attribute','collator_get_strength','collator_set_strength','collator_get_locale','collator_get_error_code','collator_get_error_message','collator_sort','collator_sort_with_sort_keys','numfmt_create','numfmt_format','numfmt_parse','numfmt_format_currency','numfmt_parse_currency','numfmt_get_attribute','numfmt_set_attribute','numfmt_get_text_attribute','numfmt_set_text_attribute','numfmt_get_symbol','numfmt_set_symbol','numfmt_get_pattern','numfmt_set_pattern','numfmt_get_locale','numfmt_get_error_code','numfmt_get_error_message','msgfmt_create','msgfmt_format','msgfmt_format_message','msgfmt_parse','msgfmt_parse_message','msgfmt_set_pattern','msgfmt_get_pattern','msgfmt_get_locale','msgfmt_get_error_code','msgfmt_get_error_message','datefmt_create','datefmt_format','datefmt_parse','datefmt_localtime','datefmt_get_datetype','datefmt_get_timetype','datefmt_get_calendar','datefmt_set_calendar','datefmt_get_timezone_id','datefmt_set_timezone_id','datefmt_get_pattern','datefmt_set_pattern','datefmt_get_locale','datefmt_get_error_code','datefmt_get_error_message','grapheme_strlen','grapheme_strpos','grapheme_stripos','grapheme_substr','grapheme_strstr','grapheme_extract','idn_to_ascii','idn_to_utf8','IntlTimeZone','IntlCalendar','IntlDateFormatter','NumberFormatter','MessageFormatter','Collator','Locale','IntlBreakIterator','IntlRuleBasedBreakIterator','IntlCodePointBreakIterator','IntlPartsIterator','UConverter','zip_open','zip_read','zip_close','zip_entry_open','zip_entry_read','zip_entry_close','zip_entry_name','zip_entry_filesize','zip_entry_compressedsize','zip_entry_compressionmethod','ZipArchive','gd_info','image_type_to_extension','image_type_to_mime_type','imageaffine','imagealphablending','imageantialias','imagearc','imagebmp','imagechar','imagecharup','imagecolorallocate','imagecolorallocatealpha','imagecolorat','imagecolorclosest','imagecolorclosestalpha','imagecolorclosesthwb','imagecolordeallocate','imagecolorexact','imagecolorexactalpha','imagecolormatch','imagecolorresolve','imagecolorresolvealpha','imagecolorset','imagecolorsforindex','imagecolorstotal','imagecolortransparent','imageconvolution','imagecopy','imagecopymerge','imagecopymergegray','imagecopyresampled','imagecopyresized','imagecreate','imagecreatefrombmp','imagecreatefromgd','imagecreatefromgd2','imagecreatefromgd2part','imagecreatefromgif','imagecreatefromjpeg','imagecreatefrompng','imagecreatefromstring','imagecreatefromwbmp','imagecreatefromwebp','imagecreatefromxbm','imagecreatefromxpm','imagecreatetruecolor','imagecrop','imagecropauto','imagedashedline','imagedestroy','imageellipse','imagefill','imagefilledarc','imagefilledellipse','imagefilledpolygon','imagefilledrectangle','imagefilltoborder','imagefilter','imageflip','imagefontheight','imagefontwidth','imageftbbox','imagefttext','imagegammacorrect','imagegd','imagegd2','imagegetclip','imagegif','imagegrabscreen','imagegrabwindow','imageinterlace','imageistruecolor','imagejpeg','imagelayereffect','imageline','imageloadfont','imagepalettecopy','imagepalettetotruecolor','imagepng','imagepolygon','imagerectangle','imagerotate','imagesavealpha','imagesetbrush','imagesetclip','imagesetinterpolation','imagesetpixel','imagesetstyle','imagesetthickness','imagesettile','imagestring','imagestringup','imagesx','imagesy','imagetruecolortopalette','imagettfbbox','imagettftext','imagetypes','imagewbmp','imagewebp','imagexbm','jpeg2wbmp','png2wbmp','GdImage','socket_accept','socket_bind','socket_clear_error','socket_close','socket_connect','socket_create_listen','socket_create_pair','socket_create','socket_get_option','socket_getpeername','socket_getsockname','socket_import_stream','socket_last_error','socket_listen','socket_read','socket_recv','socket_recvfrom','socket_select','socket_send','socket_sendto','socket_set_block','socket_set_nonblock','socket_set_option','socket_shutdown','socket_strerror','socket_write','AddressInfo','Socket','FFI','FFI\CData','FFI\CType','FFI\ParserException','FFI\Exception','assert_options','assert','cli_get_process_title','cli_set_process_title','dl','extension_loaded','get_cfg_var','get_current_user','get_extension_funcs','get_included_files','get_include_path','get_loaded_extensions','get_magic_quotes_gpc','get_magic_quotes_runtime','getenv','gethostbyaddr','gethostbyname','gethostbynamel','gethostname','getlastmod','getmygid','getmyinode','getmypid','getmyuid','getopt','getprotobyname','getprotobynumber','getrusage','getservbyname','getservbyport','header_remove','header_register_callback','hrtime','http_response_code','ini_alter','ini_get_all','ini_get','ini_restore','ini_set','pack','php_logo_guid','phpcredits','putenv','set_include_path','sleep','sys_get_temp_dir','time_nanosleep','time_sleep_until','unpack','usleep','version_compare','zend_version','zend_thread_id','gc_collect_cycles','gc_disable','gc_enable','gc_enabled','gc_mem_caches','gc_status','ctype_alnum','ctype_alpha','ctype_cntrl','ctype_digit','ctype_graph','ctype_lower','ctype_print','ctype_punct','ctype_space','ctype_upper','ctype_xdigit','libxml_use_internal_errors','libxml_get_errors','libxml_clear_errors','libxml_get_last_error','LIBXML_NOERROR','LIBXML_NOWARNING','LIBXML_NOCDATA','LIBXML_NOBLANKS','LIBXML_COMPACT','JSON_PRETTY_PRINT','JSON_UNESCAPED_SLASHES','JSON_UNESCAPED_UNICODE','JSON_FORCE_OBJECT','JSON_NUMERIC_CHECK','JSON_PARTIAL_OUTPUT_ON_ERROR','JSON_PRESERVE_ZERO_FRACTION','JSON_BIGINT_AS_STRING','JSON_INVALID_UTF8_IGNORE','JSON_INVALID_UTF8_SUBSTITUTE','FILE_APPEND','FILE_USE_INCLUDE_PATH','FILE_IGNORE_NEW_LINES','FILE_SKIP_EMPTY_LINES','FILE_NO_DEFAULT_CONTEXT','LOCK_EX','LOCK_SH','LOCK_UN',
'LOCK_NB','PATHINFO_DIRNAME','PATHINFO_BASENAME','PATHINFO_EXTENSION','PATHINFO_FILENAME','SCANDIR_SORT_ASCENDING','SCANDIR_SORT_DESCENDING','SCANDIR_SORT_NONE','GLOB_MARK','GLOB_NOSORT','GLOB_NOCHECK','GLOB_NOESCAPE','GLOB_BRACE','GLOB_ONLYDIR','GLOB_ERR','SORT_REGULAR','SORT_NUMERIC','SORT_STRING','SORT_LOCALE_STRING','SORT_NATURAL','SORT_FLAG_CASE','SORT_ASC','SORT_DESC','PREG_SPLIT_NO_EMPTY','PREG_SPLIT_DELIM_CAPTURE','PREG_SPLIT_OFFSET_CAPTURE','PREG_GREP_INVERT','PCRE_VERSION','PCRE_JIT_SUPPORT','CURLOPT_URL','CURLOPT_RETURNTRANSFER','CURLOPT_POST','CURLOPT_POSTFIELDS','CURLOPT_HTTPHEADER','CURLOPT_HEADER','CURLOPT_TIMEOUT','CURLOPT_CONNECTTIMEOUT','CURLOPT_USERAGENT','CURLOPT_SSL_VERIFYPEER','CURLOPT_SSL_VERIFYHOST','CURLOPT_FOLLOWLOCATION','CURLOPT_MAXREDIRS','CURLOPT_COOKIE','CURLOPT_COOKIEJAR','CURLOPT_COOKIEFILE','CURLOPT_CUSTOMREQUEST','CURLOPT_VERBOSE','CURLOPT_CAINFO','CURLOPT_CAPATH','CURLOPT_HTTPGET','CURLOPT_PUT','CURLOPT_ENCODING','CURLOPT_REFERER','CURLOPT_HTTPAUTH','CURLAUTH_BASIC','CURLAUTH_DIGEST','CURLINFO_HTTP_CODE','CURLINFO_EFFECTIVE_URL','CURLINFO_TOTAL_TIME','CURLINFO_CONTENT_TYPE','http.method','http.header','http.content','http.proxy','http.request_fulluri','http.timeout','http.user_agent','ssl.peer_name','ssl.verify_peer','ssl.verify_peer_name','ssl.allow_self_signed','ssl.cafile','ssl.capath','ssl.local_cert','ssl.local_pk','ssl.passphrase','ssl.cipher_list','ssl.SNI_enabled','openssl_pkey_new','openssl_pkey_export','openssl_pkey_get_private','openssl_pkey_get_public','openssl_pkey_free','openssl_sign','openssl_verify','openssl_seal','openssl_open','openssl_csr_new','openssl_csr_sign','openssl_x509_parse','OPENSSL_ALGO_SHA1','OPENSSL_ALGO_SHA256','OPENSSL_ALGO_SHA512','OPENSSL_ALGO_MD5','OPENSSL_PKCS1_PADDING','OPENSSL_NO_PADDING','OPENSSL_KEYTYPE_RSA','OPENSSL_KEYTYPE_EC','PKCS7_DETACHED','PKCS7_TEXT','sodium_crypto_aead_aes256gcm_is_available','sodium_crypto_aead_aes256gcm_encrypt','sodium_crypto_aead_aes256gcm_decrypt','sodium_crypto_auth','sodium_crypto_auth_verify','sodium_crypto_box_keypair','sodium_crypto_box_seal','sodium_crypto_box_seal_open','sodium_crypto_box','sodium_crypto_box_open','sodium_crypto_generichash','sodium_crypto_kx_keypair','sodium_crypto_kx_client_session_keys','sodium_crypto_kx_server_session_keys','sodium_crypto_pwhash','sodium_crypto_pwhash_str','sodium_crypto_pwhash_str_verify','sodium_crypto_pwhash_scryptsalsa208sha256_str','sodium_crypto_scalarmult','sodium_crypto_secretbox','sodium_crypto_secretbox_open','sodium_crypto_shorthash','sodium_crypto_sign_keypair','sodium_crypto_sign_seed_keypair','sodium_crypto_sign','sodium_crypto_sign_open','sodium_crypto_sign_detached','sodium_crypto_sign_verify_detached','sodium_increment','sodium_memcmp','sodium_memzero','sodium_pad','sodium_unpad','sodium_hex2bin','SODIUM_CRYPTO_SECRETBOX_KEYBYTES','SODIUM_CRYPTO_SECRETBOX_NONCEBYTES','SODIUM_CRYPTO_PWHASH_SALTBYTES','SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE','SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE','apcu_add','apcu_store','apcu_fetch','apcu_delete','apcu_exists','apcu_inc','apcu_dec','apcu_cas','apcu_clear_cache','apcu_cache_info','apcu_sma_info','apcu_entry','APCUIterator','opcache_compile_file','opcache_get_configuration','opcache_get_status','opcache_invalidate','opcache_is_script_cached','opcache_reset','bcadd','bccomp','bcdiv','bcmod','bcmul','bcpow','bcpowmod','bcscale','bcsqrt','bcsub','posix_access','posix_ctermid','posix_getcwd','posix_getegid','posix_geteuid','posix_getgid','posix_getgrgid','posix_getgrnam','posix_getgroups','posix_getlogin','posix_getpgid','posix_getpgrp','posix_getpid','posix_getppid','posix_getpwnam','posix_getpwuid','posix_getrlimit','posix_getsid','posix_getuid','posix_isatty','posix_kill','posix_mkfifo','posix_setegid','posix_seteuid','posix_setgid','posix_setpgid','posix_setsid','posix_setuid','posix_strerror','posix_times','posix_ttyname','posix_uname','XMLWriter','xmlwriter_open_memory','xmlwriter_open_uri','xmlwriter_start_document','xmlwriter_end_document','xmlwriter_start_element','xmlwriter_end_element','xmlwriter_full_end_element','xmlwriter_write_attribute','xmlwriter_start_attribute','xmlwriter_end_attribute','xmlwriter_text','xmlwriter_write_cdata','xmlwriter_write_comment','xmlwriter_start_dtd','xmlwriter_end_dtd','xmlwriter_write_dtd_element','xmlwriter_start_pi','xmlwriter_end_pi','xmlwriter_output_memory','xmlwriter_flush','xmlwriter_set_indent','xmlwriter_set_indent_string','xmlwriter_set_uri','xmlwriter_set_version','xmlwriter_set_raw','xmlwriter_set_encoding','xmlwriter_set_option','xmlwriter_set_state','xmlwriter_set_base_uri','MB_CASE_UPPER','MB_CASE_LOWER','MB_CASE_TITLE','MB_CASE_FOLD','MB_OVERLOAD_MAIL','MB_OVERLOAD_STRING','MB_OVERLOAD_REGEX','mb_str_contains','mb_str_starts_with','mb_str_ends_with','IMG_GIF','IMG_JPG','IMG_JPEG','IMG_PNG','IMG_WBMP','IMG_XPM','IMG_WEBP','IMG_BMP','IMG_FILTER_NEGATE','IMG_FILTER_GRAYSCALE','IMG_FILTER_BRIGHTNESS','IMG_FILTER_CONTRAST','IMG_FILTER_COLORIZE','IMG_FILTER_EDGEDETECT','IMG_FILTER_EMBOSS','IMG_FILTER_GAUSSIAN_BLUR','IMG_FILTER_SELECTIVE_BLUR','IMG_FILTER_MEAN_REMOVAL','IMG_FILTER_SMOOTH','IMG_FLIP_HORIZONTAL','IMG_FLIP_VERTICAL','IMG_FLIP_BOTH','IMG_EFFECT_REPLACE','IMG_EFFECT_ALPHABLEND','IMG_EFFECT_NORMAL','IMG_EFFECT_OVERLAY','GD_VERSION','GD_MAJOR_VERSION','GD_MINOR_VERSION','GD_RELEASE_VERSION','GD_EXTRA_VERSION','GD_BUNDLED','GD_VERSION_STRING','GD_RELEASE_DATE','AF_INET','AF_INET6','AF_UNIX','SOCK_STREAM','SOCK_DGRAM','SOCK_RAW','SOCK_SEQPACKET','SOCK_RDM','SOL_SOCKET','SOL_TCP','SOL_UDP','SO_DEBUG','SO_REUSEADDR','SO_KEEPALIVE','SO_BROADCAST','SO_LINGER','SO_RCVBUF','SO_SNDBUF','SO_RCVTIMEO','SO_SNDTIMEO','MSG_OOB','MSG_PEEK','MSG_DONTROUTE','MSG_WAITALL','STREAM_FILTER_READ','STREAM_FILTER_WRITE','STREAM_FILTER_ALL','php_user_filter','PASSWORD_BCRYPT_DEFAULT_COST','PASSWORD_ARGON2_DEFAULT_MEMORY_COST','PASSWORD_ARGON2_DEFAULT_TIME_COST','PASSWORD_ARGON2_DEFAULT_THREADS','getimagesize','getimagesizefromstring','exif_read_data','exif_imagetype','fsockopen','pfsockopen','dns_get_record','checkdnsrr','getmxrr','apache_request_headers','apache_response_headers','mail','iterator_to_array','iterator_count','iterator_apply','ini_parse_quantity','sys_getloadavg','__FILE_compiler_halt_offset__','yield from','enum_exists','ENT_COMPAT','ENT_QUOTES','ENT_NOQUOTES','ENT_IGNORE','ENT_SUBSTITUTE','ENT_DISALLOWED','ENT_HTML401','ENT_XML1','ENT_XHTML','ENT_HTML5','CASE_LOWER','CASE_UPPER','PASSWORD_ARGON2_PROVIDER','JSON_ERROR_NONE','JSON_ERROR_DEPTH','JSON_ERROR_STATE_MISMATCH','JSON_ERROR_CTRL_CHAR','JSON_ERROR_SYNTAX','JSON_ERROR_UTF8','JSON_ERROR_RECURSION','JSON_ERROR_INF_OR_NAN','JSON_ERROR_UNSUPPORTED_TYPE','JSON_ERROR_INVALID_PROPERTY_NAME','JSON_ERROR_UTF16','PREG_NO_ERROR','PREG_INTERNAL_ERROR','PREG_BACKTRACK_LIMIT_ERROR','PREG_RECURSION_LIMIT_ERROR','PREG_BAD_UTF8_ERROR','PREG_BAD_UTF8_OFFSET_ERROR','PREG_JIT_STACKLIMIT_ERROR','UPLOAD_ERR_OK','UPLOAD_ERR_INI_SIZE','UPLOAD_ERR_FORM_SIZE','UPLOAD_ERR_PARTIAL','UPLOAD_ERR_NO_FILE','UPLOAD_ERR_NO_TMP_DIR','UPLOAD_ERR_CANT_WRITE','UPLOAD_ERR_EXTENSION','EXIF_USE_MBSTRING','IFD0','COMPUTED','THUMBNAIL','EXIF','INTEROPERABILITY','DNS_A','DNS_AAAA','DNS_CNAME','DNS_MX','DNS_TXT','DNS_NS','DNS_SOA','DNS_PTR','DNS_HINFO','DNS_CAA','DNS_SRV','DNS_NAPTR','DNS_ANY','DNS_ALL','STREAM_PF_INET','STREAM_PF_INET6','STREAM_PF_UNIX','STREAM_SOCK_STREAM','STREAM_SOCK_DGRAM','STREAM_SOCK_RAW','STREAM_SOCK_SEQPACKET','STREAM_SOCK_RDM','STREAM_CLIENT_CONNECT','STREAM_CLIENT_ASYNC_CONNECT','STREAM_CLIENT_PERSISTENT','STREAM_SERVER_BIND','STREAM_SERVER_LISTEN','STREAM_CRYPTO_METHOD_TLS_CLIENT','STREAM_CRYPTO_METHOD_TLS_SERVER','STREAM_CRYPTO_METHOD_SSLv23_CLIENT','STREAM_CRYPTO_METHOD_SSLv2_CLIENT','STREAM_CRYPTO_METHOD_SSLv3_CLIENT','STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT','STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT','STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT','STREAM_SHUT_RD','STREAM_SHUT_WR','STREAM_SHUT_RDWR','FILTER_VALIDATE_BOOLEAN','FILTER_VALIDATE_DOMAIN','FILTER_VALIDATE_FLOAT','FILTER_VALIDATE_INT','FILTER_VALIDATE_MAC','FILTER_VALIDATE_REGEXP','FILTER_SANITIZE_EMAIL','FILTER_SANITIZE_ENCODED','FILTER_SANITIZE_FULL_SPECIAL_CHARS','FILTER_SANITIZE_NUMBER_FLOAT','FILTER_SANITIZE_NUMBER_INT','FILTER_SANITIZE_SPECIAL_CHARS','FILTER_SANITIZE_STRIPPED','FILTER_SANITIZE_URL','FILTER_UNSAFE_RAW','FILTER_FLAG_ALLOW_OCTAL','FILTER_FLAG_ALLOW_HEX','FILTER_FLAG_STRIP_LOW','FILTER_FLAG_STRIP_HIGH','FILTER_FLAG_STRIP_BACKTICK','FILTER_FLAG_ENCODE_LOW','FILTER_FLAG_ENCODE_HIGH','FILTER_FLAG_ENCODE_AMP','FILTER_FLAG_NO_ENCODE_QUOTES','FILTER_NULL_ON_FAILURE','FILTER_FLAG_ALLOW_FRACTION','FILTER_FLAG_ALLOW_THOUSAND','FILTER_FLAG_ALLOW_SCIENTIFIC','FILTER_FLAG_HOSTNAME','FILTER_FLAG_IPV4','FILTER_FLAG_IPV6','FILTER_FLAG_NO_PRIV_RANGE','FILTER_FLAG_NO_RES_RANGE','FILTER_REQUIRE_SCALAR','FILTER_REQUIRE_ARRAY','FILTER_FORCE_ARRAY','open','close','read','write','destroy','gc','getMessage','getCode','getFile','getLine','getTrace','getTraceAsString','getPrevious','accept','getFlags','setFlags','getMode','setMode','getPregFlags','setPregFlags','SoapClient','SoapServer','SoapFault','SoapHeader','SoapParam','SoapVar','__doRequest','__getFunctions','__getTypes','__getLastRequest','__getLastResponse','__getLastRequestHeaders','__getLastResponseHeaders','__setLocation','__setSoapHeaders','location','uri','style','soap_version','login','password','proxy_host','proxy_port','stream_context','compression','encoding','classmap','exceptions','connection_timeout','typemap','cache_wsdl','user_agent','features','keep_alive',
'SOAP_RPC','SOAP_DOCUMENT','SOAP_ENCODED','SOAP_LITERAL','SOAP_1_1','SOAP_1_2','WSDL_CACHE_NONE','WSDL_CACHE_DISK','WSDL_CACHE_MEMORY','WSDL_CACHE_BOTH','SOAP_SINGLE_ELEMENT_ARRAYS','SOAP_USE_XSI_ARRAY_TYPE','SOAP_WAIT_ONE_WAY_CALLS','gmp_abs','gmp_add','gmp_and','gmp_clrbit','gmp_cmp','gmp_com','gmp_div_q','gmp_div_qr','gmp_div_r','gmp_divexact','gmp_export','gmp_fact','gmp_gcd','gmp_gcdext','gmp_hamdist','gmp_import','gmp_init','gmp_intval','gmp_invert','gmp_jacobi','gmp_legendre','gmp_mod','gmp_mul','gmp_neg','gmp_nextprime','gmp_or','gmp_perfect_power','gmp_perfect_square','gmp_popcount','gmp_pow','gmp_powm','gmp_prob_prime','gmp_random_bits','gmp_random_range','gmp_root','gmp_rootrem','gmp_scan0','gmp_scan1','gmp_setbit','gmp_sign','gmp_sqrt','gmp_sqrtrem','gmp_strval','gmp_sub','gmp_testbit','gmp_xor','GMP','HASH_HMAC','CURLOPT_NOPROGRESS','CURLOPT_PROGRESSFUNCTION','CURLOPT_STDERR','CURLOPT_WRITEHEADER','CURLOPT_FILE','CURLOPT_INFILE','CURLOPT_READFUNCTION','CURLOPT_WRITEFUNCTION','CURLPROTO_HTTP','CURLPROTO_HTTPS','CURLPROTO_FTP','CURLPROTO_FTPS','CURLPROTO_SCP','CURLPROTO_SFTP','CURLPROTO_TELNET','CURLPROTO_LDAP','CURLAUTH_NONE','CURLAUTH_ANY','CURLAUTH_ANYSAFE','CURL_IPRESOLVE_WHATEVER','CURL_IPRESOLVE_V4','CURL_IPRESOLVE_V6','CURLPROXY_HTTP','CURLPROXY_SOCKS4','CURLPROXY_SOCKS5','CURLPROXY_SOCKS4A','CURLPROXY_SOCKS5_HOSTNAME','CURLINFO_HEADER_SIZE','CURLINFO_REQUEST_SIZE','CURLINFO_SSL_VERIFYRESULT','CURLINFO_FILETIME','CURLINFO_REDIRECT_COUNT','CURLINFO_REDIRECT_URL','CURLINFO_PRIMARY_IP','CURLINFO_LOCAL_IP','CURLINFO_LOCAL_PORT','CURLM_CALL_MULTI_PERFORM','CURLM_OK','CURLMSG_DONE','iconv','iconv_get_encoding','iconv_set_encoding','iconv_strlen','iconv_strpos','iconv_strrpos','iconv_substr','iconv_mime_encode','iconv_mime_decode','iconv_mime_decode_headers','TRANSLIT','IGNORE','T_ABSTRACT','T_AND_EQUAL','T_ARRAY','T_ARRAY_CAST','T_AS','T_ATTRIBUTE','T_BAD_CHARACTER','T_BOOLEAN_AND','T_BOOLEAN_OR','T_BOOL_CAST','T_BREAK','T_CALLABLE','T_CASE','T_CATCH','T_CLASS','T_CLASS_C','T_CLONE','T_CLOSE_TAG','T_COALESCE','T_COALESCE_EQUAL','T_COMMENT','T_CONCAT_EQUAL','T_CONST','T_CONSTANT_ENCAPSED_STRING','T_CONTINUE','T_CURLY_OPEN','T_DEC','T_DECLARE','T_DEFAULT','T_DIR','T_DIV_EQUAL','T_DNUMBER','T_DO','T_DOC_COMMENT','T_DOLLAR_OPEN_CURLY_BRACES','T_DOUBLE_ARROW','T_DOUBLE_CAST','T_DOUBLE_COLON','T_ECHO','T_ELSE','T_ELSEIF','T_EMPTY','T_ENCAPSED_AND_WHITESPACE','T_ENDDECLARE','T_ENDFOR','T_ENDFOREACH','T_ENDIF','T_ENDSWITCH','T_ENDWHILE','T_END_HEREDOC','T_ENUM','T_EVAL','T_EXIT','T_EXTENDS','T_FILE','T_FINAL','T_FINALLY','T_FN','T_FOR','T_FOREACH','T_FUNCTION','T_FUNC_C','T_GLOBAL','T_GOTO','T_HALT_COMPILER','T_IF','T_IMPLEMENTS','T_INC','T_INCLUDE','T_INCLUDE_ONCE','T_INLINE_HTML','T_INSTANCEOF','T_INSTEADOF','T_INTERFACE','T_INT_CAST','T_ISSET','T_IS_EQUAL','T_IS_GREATER_OR_EQUAL','T_IS_IDENTICAL','T_IS_NOT_EQUAL','T_IS_NOT_IDENTICAL','T_IS_SMALLER_OR_EQUAL','T_LINE','T_LIST','T_LNUMBER','T_LOGICAL_AND','T_LOGICAL_OR','T_LOGICAL_XOR','T_MATCH','T_METHOD_C','T_MINUS_EQUAL','T_MOD_EQUAL','T_MUL_EQUAL','T_NAMESPACE','T_NAME_FULLY_QUALIFIED','T_NAME_QUALIFIED','T_NAME_RELATIVE','T_NEW','T_NS_C','T_NS_SEPARATOR','T_NUM_STRING','T_OBJECT_CAST','T_OBJECT_OPERATOR','T_OPEN_TAG','T_OPEN_TAG_WITH_ECHO','T_OR_EQUAL','T_PAAMAYIM_NEKUDOTAYIM','T_PLUS_EQUAL','T_PRINT','T_PRIVATE','T_PROTECTED','T_PUBLIC','T_READONLY','T_REQUIRE','T_REQUIRE_ONCE','T_RETURN','T_SL','T_SL_EQUAL','T_SPACESHIP','T_SR','T_SR_EQUAL','T_START_HEREDOC','T_STATIC','T_STRING','T_STRING_CAST','T_STRING_VARNAME','T_SWITCH','T_THROW','T_TRAIT','T_TRAIT_C','T_TRY','T_UNSET','T_UNSET_CAST','T_USE','T_VAR','T_VARIABLE','T_WHILE','T_WHITESPACE','T_XOR_EQUAL','T_YIELD','T_YIELD_FROM','pcntl_alarm','pcntl_async_signals','pcntl_errno','pcntl_fork','pcntl_get_last_error','pcntl_getpriority','pcntl_setpriority','pcntl_signal_dispatch','pcntl_signal_get_handler','pcntl_signal','pcntl_sigprocmask','pcntl_sigtimedwait','pcntl_sigwaitinfo','pcntl_strerror','pcntl_wait','pcntl_waitpid','pcntl_wexitstatus','pcntl_wifexited','pcntl_wifsignaled','pcntl_wifstopped','pcntl_wstopsig','pcntl_wtermsig','SIGABRT','SIGALRM','SIGCHLD','SIGCONT','SIGHUP','SIGINT','SIGKILL','SIGPIPE','SIGQUIT','SIGTERM','SIGUSR1','SIGUSR2','SIG_DFL','SIG_IGN','SIG_ERR','PRIO_PROCESS','PRIO_PGRP','PRIO_USER','WNOHANG','WUNTRACED','readline','readline_add_history','readline_callback_handler_install','readline_callback_handler_remove','readline_callback_read_char','readline_clear_history','readline_completion_function','readline_getinfo','readline_list_history','readline_on_new_line','readline_read_history','readline_redisplay','readline_set_prompt','readline_write_history','STREAM_IPPROTO_TCP','STREAM_IPPROTO_UDP','STREAM_IPPROTO_ICMP','STREAM_IPPROTO_RAW','STREAM_ENFORCE_SAFE_MODE','STREAM_IGNORE_URL','STREAM_REPORT_ERRORS','STREAM_MUST_SEEK','STREAM_URL_STAT_LINK','STREAM_URL_STAT_QUIET','STREAM_MKDIR_RECURSIVE','STREAM_IS_URL','STREAM_OPTION_BLOCKING','STREAM_OPTION_READ_TIMEOUT','STREAM_OPTION_WRITE_BUFFER','STREAM_BUFFER_NONE','STREAM_BUFFER_LINE','STREAM_BUFFER_FULL','PSFS_PASS_ON','PSFS_FEED_ME','PSFS_ERR_FATAL','fastcgi_finish_request','isDot','SKIP_DOTS','CURRENT_AS_PATHNAME','CURRENT_AS_FILEINFO','CURRENT_AS_SELF','KEY_AS_PATHNAME','KEY_AS_FILENAME','NEW_CURRENT_AND_KEY','OTHER_MODE_MASK','CURRENT_MODE_MASK','KEY_MODE_MASK','bottom','top','push','pop','shift','unshift','enqueue','dequeue','setIteratorMode','insert','isEmpty','recoverFromCorruption','isCorrupted','compare','setExtractFlags','append','exchangeArray','getArrayCopy','getIterator','getIteratorClass','setIteratorClass','STD_PROP_LIST','ARRAY_AS_PROPS','aes-128-cbc','aes-256-gcm','sha256','sha512','OPENSSL_RAW_DATA','OPENSSL_ZERO_PADDING','OPENSSL_DONT_ZERO_PAD_KEY','OPENSSL_NO_DTLS','LIBXML_DTDLOAD','LIBXML_DTDATTR','LIBXML_NOENT','LIBXML_XINCLUDE','LIBXML_NSCLEAN','LIBXML_NONET','LIBXML_PEDANTIC','LIBXML_HTML_NOIMPLIED','LIBXML_HTML_NODEFDTD','LIBXML_PARSEHUGE','IntlChar','isalnum','isalpha','isblank','iscntrl','isdigit','isgraph','islower','isprint','ispunct','isspace','isupper','isxdigit','charName','charAge','charDirection','getBlockCode','getNumericValue','createWordInstance','createLineInstance','createSentenceInstance','createCharacterInstance','createCodePointInstance','first','last','previous','isBoundary','getLocale','getPartsIterator','U_ZERO_ERROR','U_ILLEGAL_ARGUMENT_ERROR','U_MISSING_RESOURCE_ERROR','U_INVALID_FORMAT_ERROR','U_FILE_ACCESS_ERROR','U_ENUM_OUT_OF_RANGE_ERROR','ROUND_CEILING','ROUND_FLOOR','ROUND_DOWN','ROUND_UP','ROUND_HALFEVEN','ROUND_HALFDOWN','PAD_BEFORE_PREFIX','PAD_AFTER_PREFIX','PAD_BEFORE_SUFFIX','PAD_AFTER_SUFFIX','PARSE_INT_ONLY','fromArray','toArray','getSize','setSize','SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_KEYBYTES','SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_NSECBYTES','SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_NPUBBYTES','SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_KEYBYTES','SODIUM_CRYPTO_PWHASH_ALG_ARGON2ID13','SODIUM_CRYPTO_PWHASH_ALG_DEFAULT','SODIUM_CRYPTO_PWHASH_OPSLIMIT_MODERATE','SODIUM_CRYPTO_PWHASH_MEMLIMIT_MODERATE','SODIUM_CRYPTO_PWHASH_OPSLIMIT_SENSITIVE','SODIUM_CRYPTO_PWHASH_MEMLIMIT_SENSITIVE','SODIUM_CRYPTO_SIGN_BYTES','SODIUM_CRYPTO_SIGN_SEEDBYTES','SODIUM_CRYPTO_SIGN_PUBLICKEYBYTES','SODIUM_CRYPTO_SIGN_SECRETKEYBYTES','POSIX_F_OK','POSIX_R_OK','POSIX_W_OK','POSIX_X_OK','POSIX_S_IFBLK','POSIX_S_IFCHR','POSIX_S_IFIFO','POSIX_RLIMIT_AS','POSIX_RLIMIT_CORE','POSIX_RLIMIT_CPU','POSIX_RLIMIT_DATA','POSIX_RLIMIT_FSIZE','POSIX_RLIMIT_NOFILE','POSIX_RLIMIT_STACK','POSIX_RLIMIT_NPROC','POSIX_RLIMIT_INFINITY','cal_days_in_month','cal_from_jd','cal_info','cal_to_jd','easter_date','easter_days','frenchtojd','gregoriantojd','jddayofweek','jdmonthname','jdtofrench','jdtogregorian','jdtojewish','jdtojulian','jdtounix','jewishtojd','juliantojd','unixtojd','CAL_GREGORIAN','CAL_JULIAN','CAL_JEWISH','CAL_FRENCH','CAL_NUM_CALS','CAL_DOW_DAYNO','CAL_DOW_SHORT','CAL_DOW_LONG','CAL_MONTH_GREGORIAN_SHORT','CAL_MONTH_GREGORIAN_LONG','CAL_EASTER_DEFAULT','CAL_EASTER_ROMAN','CAL_EASTER_ALWAYS_GREGORIAN','CAL_EASTER_ALWAYS_JULIAN','SQLite3','enableExceptions','createFunction','createAggregate',
'createCollation','busyTimeout','loadExtension','backup','SQLite3Result','numColumns','columnName','columnType','SQLite3Stmt','clear','paramCount','readOnly','SQLITE3_ASSOC','SQLITE3_NUM','SQLITE3_BOTH','SQLITE3_INTEGER','SQLITE3_FLOAT','SQLITE3_TEXT','SQLITE3_BLOB','SQLITE3_NULL','SQLITE3_OPEN_READONLY','SQLITE3_OPEN_READWRITE','SQLITE3_OPEN_CREATE','SQLITE3_DETERMINISTIC','gettext','dgettext','dcgettext','ngettext','dngettext','dcngettext','textdomain','bindtextdomain','bind_textdomain_codeset','LC_MESSAGES','T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG','T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG','ReflectionFiber','getCallable','FILEINFO_NONE','FILEINFO_SYMLINK','FILEINFO_MIME_TYPE','FILEINFO_MIME_ENCODING','FILEINFO_MIME','FILEINFO_COMPRESS','FILEINFO_DEVICES','FILEINFO_CONTINUE','FILEINFO_PRESERVE_ATIME','FILEINFO_RAW','FILEINFO_EXTENSION','LOG_AUTH','LOG_AUTHPRIV','LOG_CRON','LOG_DAEMON','LOG_KERN','LOG_LOCAL0','LOG_LOCAL1','LOG_LOCAL2','LOG_LOCAL3','LOG_LOCAL4','LOG_LOCAL5','LOG_LOCAL6','LOG_LOCAL7','LOG_LPR','LOG_MAIL','LOG_NEWS','LOG_SYSLOG','LOG_USER','LOG_UUCP','LOG_PID','LOG_CONS','LOG_ODELAY','LOG_NDELAY','LOG_NOWAIT','LOG_PERROR','ftok','msg_get_queue','msg_send','msg_receive','msg_remove_queue','msg_stat_queue','msg_set_queue','MSG_IPC_NOWAIT','MSG_EXCEPT','MSG_NOERROR','MSG_EAGAIN','sem_get','sem_acquire','sem_release','sem_remove','shm_attach','shm_detach','shm_get_var','shm_has_var','shm_put_var','shm_remove_var','shm_remove','shmop_open','shmop_read','shmop_write','shmop_close','shmop_delete','shmop_size','tidy_parse_string','tidy_parse_file','tidy_clean_repair','tidy_diagnose','tidy_get_error_buffer','tidy_get_output','tidy_get_html_ver','tidy_get_opt_doc','tidy_get_release','tidy_get_status','tidy_is_xhtml','tidy_is_xml','tidy_access_count','tidy_config_count','tidy_error_count','tidy_warning_count','tidy_get_root','tidy_get_body','tidy_get_head','getParent','hasChildren','hasSiblings','isComment','isHtml','isText','isJste','isAsp','isPhp','id','name','type','line','column','value','attributes','indent','wrap','output-xhtml','clean','show-body-only','char-encoding','input-encoding','output-encoding','TIDY_NODETYPE_ROOT','TIDY_NODETYPE_DOCTYPE','TIDY_NODETYPE_COMMENT','TIDY_NODETYPE_PROCINS','TIDY_NODETYPE_TEXT','TIDY_NODETYPE_START','TIDY_NODETYPE_END','TIDY_NODETYPE_STARTEND','TIDY_NODETYPE_CDATA','TIDY_NODETYPE_SECTION','TIDY_NODETYPE_ASP','TIDY_NODETYPE_JSTE','TIDY_NODETYPE_PHP','TIDY_NODETYPE_XMLDECL','wddx_packet_start','wddx_packet_end','wddx_add_vars','wddx_serialize_value','wddx_serialize_vars','wddx_deserialize','xmlrpc_encode','xmlrpc_decode','xmlrpc_decode_request','xmlrpc_encode_request','xmlrpc_get_type','xmlrpc_server_create','xmlrpc_server_destroy','xmlrpc_server_register_method','xmlrpc_server_call_method','xmlrpc_server_add_introspection_data','xmlrpc_server_register_introspection_callback','xmlrpc_parse_method_descriptions','xmlrpc_set_type','XMLRPC_TYPE_INT','XMLRPC_TYPE_I4','XMLRPC_TYPE_BOOLEAN','XMLRPC_TYPE_DOUBLE','XMLRPC_TYPE_STRING','XMLRPC_TYPE_DATETIME','XMLRPC_TYPE_BASE64','XMLRPC_TYPE_ARRAY','XMLRPC_TYPE_STRUCT','enchant_broker_init','enchant_broker_free','enchant_broker_list_dicts','enchant_broker_dict_exists','enchant_broker_request_dict','enchant_broker_request_pwl_dict','enchant_broker_free_dict','enchant_broker_set_ordering','enchant_broker_describe','enchant_broker_get_error','enchant_dict_check','enchant_dict_suggest','enchant_dict_add_to_personal','enchant_dict_add_to_session','enchant_dict_is_in_session','enchant_dict_store_replacement','enchant_dict_get_error','enchant_dict_describe','ENCHANT_MYSPELL','ENCHANT_ISPELL','ENCHANT_ASPELL','ENCHANT_HUNSPELL','ENCHANT_VOIKKO','ENCHANT_ZEMBEREK','EnchantBroker','EnchantDictionary','com_get_active_object','com_load_typelib','com_message_pump','com_print_typeinfo','com_event_sink','com_create_guid','variant_abs','variant_add','variant_and','variant_cast','variant_cat','variant_cmp','variant_date_from_timestamp','variant_date_to_timestamp','variant_div','variant_eqv','variant_fix','variant_get_type','variant_idiv','variant_imp','variant_int','variant_mod','variant_mul','variant_neg','variant_not','variant_or','variant_pow','variant_round','variant_set_type','variant_set','variant_sub','variant_xor','VT_EMPTY','VT_NULL','VT_I2','VT_I4','VT_R4','VT_R8','VT_CY','VT_DATE','VT_BSTR','VT_DISPATCH','VT_ERROR','VT_BOOL','VT_VARIANT','VT_UNKNOWN','VT_DECIMAL','VT_I1','VT_UI1','VT_UI2','VT_UI4','VT_I8','VT_UI8','VT_INT','VT_UINT','VT_ARRAY','VT_BYREF','CP_ACP','CP_MACCP','CP_OEMCP','CP_UTF7','CP_UTF8','CP_SYMBOL','CP_THREAD_ACP','VARCMP_LT','VARCMP_EQ','VARCMP_GT','VARCMP_NULL','INFO_GENERAL','INFO_CREDITS','INFO_CONFIGURATION','INFO_MODULES','INFO_ENVIRONMENT','INFO_VARIABLES','INFO_LICENSE','INFO_ALL','INFO_PHPCOMPILER','FILEINFO_APPLE','PKCS7_BINARY','PKCS7_NOINTERN','PKCS7_NOVERIFY','PKCS7_NOCHAIN','PKCS7_NOCERTS','PKCS7_NOATTR','PKCS7_NOSIGS','OPENSSL_ALGO_DSS1','OPENSSL_CIPHER_RC2_40','OPENSSL_CIPHER_RC2_64','OPENSSL_CIPHER_RC2_128','OPENSSL_CIPHER_DES','OPENSSL_CIPHER_3DES','OPENSSL_CONF_DEFAULT','OPENSSL_VERSION_TEXT','OPENSSL_VERSION_NUMBER','OPENSSL_TLSEXT_SERVER_NAME','CURLOPT_AUTOREFERER','CURLOPT_BINARYTRANSFER','CURLOPT_COOKIESESSION','CURLOPT_CERTINFO','CURLOPT_CONNECTTIMEOUT_MS','CURLOPT_TIMEOUT_MS','CURLOPT_DNS_SERVERS','CURLOPT_HTTP_CONTENT_DECODING','CURLOPT_HTTP_TRANSFER_DECODING','CURLOPT_IGNORE_CONTENT_LENGTH','CURLOPT_ISSUERCERT','CURLOPT_MAXCONNECTS','CURLOPT_MAXFILESIZE','CURLOPT_NEW_DIRECTORY_PERMS','CURLOPT_NEW_FILE_PERMS','CURLOPT_PINNEDPUBLICKEY','CURLOPT_PIPEWAIT','CURLOPT_PROXY_SERVICE_NAME','CURLOPT_SERVICE_NAME','CURLOPT_SOCKS5_GSSAPI_NEC','CURLOPT_SOCKS5_GSSAPI_SERVICE','CURLOPT_SSH_COMPRESSION','CURLOPT_SSH_KNOWNHOSTS','CURLOPT_SSL_ENABLE_ALPN','CURLOPT_SSL_ENABLE_NPN','CURLOPT_SSL_FALSESTART','CURLOPT_SSL_OPTIONS','CURLSSLOPT_ALLOW_BEAST','CURLSSLOPT_NO_REVOKE','CURLOPT_TCP_FASTOPEN','CURLOPT_TCP_KEEPALIVE','CURLOPT_TCP_KEEPIDLE','CURLOPT_TCP_KEEPINTVL','CURLOPT_TCP_NODELAY','CURLOPT_TFTP_BLKSIZE','CURLOPT_XOAUTH2_BEARER','CURLINFO_HTTP_VERSION','CURLINFO_PROTOCOL','CURLINFO_PROXY_SSL_VERIFYRESULT','CURLINFO_SCHEME','CURLINFO_APPCONNECT_TIME','CURLINFO_CONNECT_TIME','CURLINFO_NAMELOOKUP_TIME','CURLINFO_PRETRANSFER_TIME','CURLINFO_REDIRECT_TIME','CURLINFO_STARTTRANSFER_TIME','CURLE_FTP_WEIRD_SERVER_REPLY','CURLE_REMOTE_ACCESS_DENIED','CURLE_FTP_ACCEPT_FAILED','CURLE_HTTP_RETURNED_ERROR','CURLE_OPERATION_TIMEDOUT','CURLE_SSL_CONNECT_ERROR','CURLE_PEER_FAILED_VERIFICATION','CURLMOPT_PIPELINING','CURLMOPT_MAXCONNECTS','CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE','CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE','CURLMSG_LAST','CURLVERSION_NOW','IPV6_CHECKSUM','IPV6_DONTFRAG','IPV6_HOPLIMIT','IPV6_RECVHOPLIMIT','IPV6_PKTINFO','IPV6_RECVPKTINFO','IP_MULTICAST_IF','IP_MULTICAST_LOOP','IP_MULTICAST_TTL','IP_RECVTOS','IP_RECVTTL','SO_ACCEPTCONN','SO_DOMAIN','SO_PROTOCOL','SO_SNDLOWAT','SO_RCVLOWAT','SO_PEERNAME','SO_ERROR','TCP_CONGESTION','TCP_CORK','TCP_DEFER_ACCEPT','TCP_INFO','TCP_KEEPCNT','TCP_KEEPIDLE','TCP_KEEPINTVL','TCP_LINGER2','TCP_MAXSEG','TCP_QUICKACK','TCP_SYNCNT','TCP_WINDOW_CLAMP','ULOC_ACTUAL_LOCALE','ULOC_VALID_LOCALE','GRAPHEME_EXTR_COUNT','GRAPHEME_EXTR_MAXBYTES','GRAPHEME_EXTR_MAXCHARS','U_IDNA_PROHIBITED_ERROR','U_IDNA_UNASSIGNED_ERROR','U_IDNA_CHECK_BIDI_ERROR','U_IDNA_STD3_ASCII_RULES_ERROR','U_IDNA_ACE_PREFIX_ERROR','IDNA_ALLOW_UNASSIGNED','IDNA_USE_STD3_RULES','IDNA_CHECK_BIDI','IDNA_CHECK_CONTEXTJ','IDNA_NONTRANSITIONAL_TO_ASCII','IDNA_NONTRANSITIONAL_TO_UNICODE','INTL_IDNA_VARIANT_UTS46','INTL_IDNA_VARIANT_2003','Spoofchecker','imageaffinematrixconcat','imageaffinematrixget','imageresolution','IMG_BELL','IMG_BESSEL','IMG_BICUBIC','IMG_BICUBIC_FIXED','IMG_BILINEAR_FIXED','IMG_BLACKMAN','IMG_BOX','IMG_BSPLINE','IMG_CATMULLROM','IMG_GAUSSIAN','IMG_GENERALIZED_CUBIC','IMG_HERMITE','IMG_HAMMING','IMG_HANNING','IMG_MITCHELL','IMG_POWER','IMG_QUADRATIC','IMG_SINC','IMG_NEAREST_NEIGHBOUR','IMG_WEIGHTED4','IMG_TRIANGLE','IMG_AFFINE_TRANSLATE','IMG_AFFINE_SCALE','IMG_AFFINE_ROTATE','IMG_AFFINE_SHEAR_HORIZONTAL','IMG_AFFINE_SHEAR_VERTICAL','IMG_CROP_DEFAULT','IMG_CROP_TRANSPARENT','IMG_CROP_BLACK','IMG_CROP_WHITE','IMG_CROP_SIDES','IMG_CROP_THRESHOLD','stream_metadata','stream_notification_callback','STREAM_NOTIFY_CONNECT','STREAM_NOTIFY_AUTH_REQUIRED','STREAM_NOTIFY_AUTH_RESULT','STREAM_NOTIFY_MIME_TYPE_IS','STREAM_NOTIFY_FILE_SIZE_IS','STREAM_NOTIFY_REDIRECTED','STREAM_NOTIFY_PROGRESS','STREAM_NOTIFY_COMPLETED','STREAM_NOTIFY_FAILURE','STREAM_NOTIFY_RESOLVE','STREAM_NOTIFY_SEVERITY_INFO','STREAM_NOTIFY_SEVERITY_WARN','STREAM_NOTIFY_SEVERITY_ERR','STREAM_USE_PATH','STREAM_SERVER_TCP','STREAM_SERVER_UDP','SIGBABY','SIGBUS','SIGFPE','SIGILL','SIGIOT','SIGPOLL','SIGPROF','SIGPWR','SIGSTKFLT','SIGSYS','SIGTRAP','SIGTTIN','SIGTTOU','SIGURG','SIGUNUSED','SIGVTALRM','SIGWINCH','SIGXCPU','SIGXFSZ','SIGRTMIN','CLD_EXITED','CLD_KILLED','CLD_DUMPED','CLD_TRAPPED','CLD_STOPPED','CLD_CONTINUED','SI_USER','SI_KERNEL','SI_QUEUE','SI_TIMER',
'SI_MESGQ','SI_ASYNCIO','SI_SIGIO','SI_TKILL','ldap_connect','ldap_bind','ldap_unbind','ldap_search','ldap_get_entries','ldap_first_entry','ldap_next_entry','ldap_get_attributes','ldap_get_values_len','ldap_free_result','ldap_add','ldap_delete','ldap_modify','ldap_mod_add','ldap_mod_replace','ldap_mod_del','ldap_error','ldap_err2str','ldap_compare','ldap_dn2ufn','ldap_explode_dn','ldap_rename','ldap_set_option','ldap_get_option','LDAP_OPT_CLIENT_CONTROLS','LDAP_OPT_DEREF','LDAP_OPT_ERROR_NUMBER','LDAP_OPT_ERROR_STRING','LDAP_OPT_HOST_NAME','LDAP_OPT_MATCHED_DN','LDAP_OPT_PROTOCOL_VERSION','LDAP_OPT_REFERRALS','LDAP_OPT_RESTART','LDAP_OPT_SERVER_CONTROLS','LDAP_OPT_SIZELIMIT','LDAP_OPT_TIMELIMIT','LDAP_OPT_NETWORK_TIMEOUT','LDAP_OPT_X_TLS_CACERTDIR','LDAP_OPT_X_TLS_CACERTFILE','LDAP_OPT_X_TLS_CERTFILE','LDAP_OPT_X_TLS_KEYFILE','LDAP_OPT_X_TLS_REQUIRE_CERT','LDAP_DEREF_NEVER','LDAP_DEREF_SEARCHING','LDAP_DEREF_FINDING','LDAP_DEREF_ALWAYS','LDAP_MODIFY_BATCH_REMOVE_ALL','LdapConnection','LdapResult','LdapResultEntry','RarArchive','RarEntry','RarException','zstd_compress','zstd_uncompress','zstd_compress_dict','zstd_uncompress_dict','ZSTD_COMPRESS_LEVEL_DEFAULT','ZSTD_COMPRESS_LEVEL_MIN','ZSTD_COMPRESS_LEVEL_MAX','brotli_compress','brotli_uncompress','BROTLI_COMPRESS_LEVEL_DEFAULT','BROTLI_COMPRESS_LEVEL_MIN','BROTLI_COMPRESS_LEVEL_MAX','BROTLI_PARAM_MODE','BROTLI_MODE_GENERIC','BROTLI_MODE_TEXT','BROTLI_MODE_FONT','BROTLI_PARAM_QUALITY','BROTLI_PARAM_LGWIN','BROTLI_PARAM_LGBLOCK','BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING','BROTLI_PARAM_SIZE_HINT','BROTLI_PARAM_DISABLE_RING_BUFFER_REALLOCATION','BROTLI_PARAM_DISABLE_LAST_LITERALS','BROTLI_PARAM_DISABLE_DISTANCE_SHORT_CODES','BROTLI_PARAM_DISABLE_TRANSFORMATIONS','BROTLI_PARAM_DISABLE_UNICODE_TRANSLATION','BROTLI_PARAM_DISABLE_HUFFMAN_SHANNON_FANO_CODING','BROTLI_PARAM_DISABLE_BLOCK_SPLIT','BROTLI_PARAM_DISABLE_WINDOW_REUSE','BROTLI_PARAM_DISABLE_CONTEXT_MODIFICATION','Attribute','Deprecated','SensitiveParameter','ReturnTypeWillChange','AllowDynamicProperties','Stringable','get_debug_type','fdiv','getAttributes','newInstance','getArguments','getName','isRepeated','getTarget','getTypes','allowsNull','isBuiltin','hasType','getType','hasDefaultValue','getDefaultValue','OpenSSLAsymmetricKey','OpenSSLCertificate','FILTER_VALIDATE_BOOL','fullEndElement','createFromInterface','getAttribute','setAttribute','setEncryptionName','setEncryptionIndex','EM_AES_128','EM_AES_192','EM_AES_256','EM_UNKNOWN','enum','BackedEnum','UnitEnum','isEnum','getCases','getBackingValue','getValue','start','suspend','resume','isStarted','isSuspended','isRunning','isTerminated','getReturn','getCurrent','FiberError','readonly','isReadonly','isFinal','0o','0O','fsync','fdatasync','getTentativeReturnType','isTentative','sodium_crypto_aead_xchacha20poly1305_ietf_encrypt','sodium_crypto_aead_xchacha20poly1305_ietf_decrypt','sodium_crypto_aead_xchacha20poly1305_ietf_keygen','SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES','SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NSECBYTES','SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_ABYTES','openssl_cms_encrypt','openssl_cms_decrypt','openssl_cms_read','openssl_cms_sign','openssl_cms_verify','IntlDatePatternGenerator','mysqli_fetch_column','MYSQLI_REFRESH_REPLICA','CURLOPT_DOH_URL','CURLALTSVC_READONLYFILE','CURLALTSVC_H1','CURLALTSVC_H2','CURLALTSVC_H3','Random','Randomizer','Engine','Secure','Mt19937','PcgOneseq128XslRr64','Xoshiro256StarStar','IntervalBoundary','getInt','getBytes','shuffleArray','shuffleBytes','pickArrayKeys','nextFloat','getFloat','generate','ClosedOpen','ClosedClosed','OpenClosed','OpenOpen','mysqli_execute_query','libxml_get_external_entity_loader','openssl_cipher_key_length','OPENSSL_CIPHER_AES_128_GCM','OPENSSL_CIPHER_AES_192_GCM','OPENSSL_CIPHER_AES_256_GCM','ReflectionConstant','isAnonymous','isStatic','CURLINFO_EFFECTIVE_METHOD','utf8_encode','utf8_decode','OCI_SUCCESS_WITH_INFO','OCI_NO_DATA','Override','json_validate','getBytesFromString','mb_str_pad','_SC_CLK_TCK','_SC_PAGESIZE','_SC_NPROCESSORS_CONF','_SC_NPROCESSORS_ONLN','hasPrototype','getPrototype','SensitiveParameterValue','Phar','API_VERSION','DateMalformedIntervalStringException','DateInvalidTimeZoneException','DateMalformedPeriodStringException','DateMalformedStringException','LDAP','ConnectionException','OperationException','PHP_SESSION_DISABLED','PHP_SESSION_NONE','PHP_SESSION_ACTIVE','geohash_encode','geohash_decode','geohash_encode_exact','geohash_decode_exact','Imagick','ImagickDraw','ImagickPixel','ImagickPixelIterator','ImagickKernel','ImagickException','readImage','writeImage','setImageFormat','thumbnailImage','resizeImage','cropImage','getImageWidth','getImageHeight','getimagecolorspace','setimagecolorspace','compositeImage','annotateImage','setFont','setGravity','gaussianBlurImage','sharpenImage','modulateImage','newPseudoImage','adaptiveThresholdImage','borderImage','chopImage','colorizeImage','compareImages','convolveImage','cycleColormapImage','deskewImage','despeckleImage','drawImage','edgeImage','embossImage','enhanceImage','equalizeImage','evaluateImage','floodFillPaintImage','flopImage','frameImage','gammaImage','levelImage','negateImage','normalizeImage','oilPaintImage','opaquePaintImage','orderedPosterizeImage','polaroidImage','posterizeImage','quantizeImage','radialBlurImage','raiseImage','randomThresholdImage','resampleImage','rollImage','rotateImage','roundCorners','segmentImage','sepiaToneImage','shadeImage','shadowImage','shaveImage','shearImage','sigmoidalContrastImage','solarizeImage','spliceImage','spreadImage','steganoImage','stereoImage','stripImage','swirlImage','tintImage','transformImage','transparentPaintImage','trimImage','uniqueImageColors','unsharpMaskImage','vignetteImage','waveImage','whiteThresholdImage','setFillColor','setStrokeColor','setStrokeWidth','setFontSize','rectangle','circle','ellipse','polygon','setColor','getColor','isPixelSimilar','COLOR_BLACK','COLOR_RED','COLOR_GREEN','COLOR_BLUE','COLOR_WHITE','COLOR_TRANSPARENT','COMPOSITE_DEFAULT','COMPOSITE_OVER','COMPOSITE_ADD','COMPOSITE_SUBTRACT','COMPOSITE_MULTIPLY','GRAVITY_NORTHWEST','GRAVITY_CENTER','GRAVITY_SOUTHEAST','FILTER_LANCZOS','FILTER_GAUSSIAN','FILTER_MITCHELL','RESOLUTION_PIXELSPERINCH','RESOLUTION_PIXELSPERCENTIMETER','INTERLACE_NONE','INTERLACE_LINE','INTERLACE_PLANE','INTERLACE_PARTITION','CHANNEL_RED','CHANNEL_GREEN','CHANNEL_BLUE','CHANNEL_ALPHA','CHANNEL_ALL','EVALUATE_ADD','EVALUATE_SUBTRACT','EVALUATE_MULTIPLY','EVALUATE_DIVIDE','PAINT_POINT','PAINT_REPLACE','PAINT_FLOODFILL','PAINT_RESET','IMGTYPE_BILEVEL','IMGTYPE_GRAYSCALE','IMGTYPE_PALETTE','IMGTYPE_TRUECOLOR','IMGTYPE_TRUECOLORALPHA','Redis','RedisException','RedisArray','RedisCluster','RedisClusterException','connect','pconnect','set','get','del','exists','incr','decr','mget','mset','hSet','hGet','hGetAll','hDel','hIncrBy','lPush','rPush','lPop','rPop','lRange','lLen','sAdd','sRem','sMembers','sIsMember','zAdd','zRange','zRem','zScore','zRangeByScore','expire','ttl','publish','subscribe','pipeline','multi','watch','unwatch','scan','hscan','sscan','zscan','REDIS_NOT_FOUND','REDIS_STRING','REDIS_SET','REDIS_LIST','REDIS_ZSET','REDIS_HASH','ATOMIC','MULTI','PIPELINE','OPT_SERIALIZER','SERIALIZER_NONE','SERIALIZER_PHP','SERIALIZER_IGBINARY','SERIALIZER_MSGPACK','OPT_PREFIX','OPT_READ_TIMEOUT','OPT_SCAN','SCAN_RETRY','SCAN_NORETRY','AFTER','BEFORE','Memcached','MemcachedException','addServer','addServers','getMulti','setMulti','cas','getDelayed','fetch','fetchAll','getOption','setOption','getResultCode','getResultMessage','OPT_COMPRESSION','OPT_PREFIX_KEY','OPT_HASH','HASH_DEFAULT','HASH_MD5','HASH_CRC','OPT_DISTRIBUTION','DISTRIBUTION_MODULA','DISTRIBUTION_CONSISTENT','OPT_LIBKETAMA_COMPATIBLE','OPT_BUFFER_WRITES','OPT_BINARY_PROTOCOL','RES_SUCCESS','RES_FAILURE','RES_NOTFOUND','RES_BAD_KEY','RES_SERVER_ERROR','AMQPConnection','AMQPChannel','AMQPQueue','AMQPExchange','AMQPMessage','AMQPEnvelope','AMQPBasicProperties','AMQPException','AMQP_NOPARAM','AMQP_PASSIVE','AMQP_DURABLE','AMQP_EXCLUSIVE','AMQP_AUTODELETE','AMQP_NOWAIT','AMQP_IFUNUSED','AMQP_IFEMPTY','AMQP_MANDATORY','AMQP_IMMEDIATE','AMQP_EX_TYPE_DIRECT','AMQP_EX_TYPE_FANOUT','AMQP_EX_TYPE_TOPIC','AMQP_EX_TYPE_HEADERS','AMQP_OS_SOCKET_TIMEOUT_ERRNO','AMQP_DELIVERY_MODE_NON_PERSISTENT','AMQP_DELIVERY_MODE_PERSISTENT','xdebug_break','xdebug_call_class','xdebug_call_file','xdebug_call_function','xdebug_call_line','xdebug_code_coverage_started','xdebug_dump_superglobals','xdebug_get_collected_errors','xdebug_get_formatted_function_stack','xdebug_get_gc_total_collected_roots','xdebug_get_gcstats_filename','xdebug_get_headers','xdebug_get_monitored_functions','xdebug_get_profiler_filename',
'xdebug_get_stack_depth','xdebug_get_tracefile_name','xdebug_info','xdebug_is_debugger_active','xdebug_memory_usage','xdebug_peak_memory_usage','xdebug_print_function_stack','xdebug_start_code_coverage','xdebug_stop_code_coverage','xdebug_start_function_monitor','xdebug_stop_function_monitor','xdebug_start_gcstats','xdebug_stop_gcstats','xdebug_start_trace','xdebug_stop_trace','xdebug_time_index','xdebug_var_dump','XDEBUG_TRACE_APPEND','XDEBUG_TRACE_COMPUTERIZED','XDEBUG_TRACE_HTML','XDEBUG_CC_UNUSED','XDEBUG_CC_DEAD_CODE','XDEBUG_CC_BRANCH_CHECK','XDEBUG_FILTER_CODE_COVERAGE','XDEBUG_FILTER_TRACING','XDEBUG_FILTER_PROFILING','XDEBUG_PATH_INCLUDE','XDEBUG_PATH_EXCLUDE','XDEBUG_MODE_OFF','XDEBUG_MODE_DEVELOP','XDEBUG_MODE_COVERAGE','XDEBUG_MODE_DEBUG','XDEBUG_MODE_GCSTATS','XDEBUG_MODE_PROFILE','XDEBUG_MODE_TRACE','LoggerInterface','AbstractLogger','NullLogger','LogLevel','emergency','alert','critical','error','warning','notice','info','debug','MessageInterface','RequestInterface','ServerRequestInterface','ResponseInterface','StreamInterface','UriInterface','UploadedFileInterface','getStatusCode','withStatus','getReasonPhrase','getBody','withBody','getHeader','hasHeader','withHeader','getMethod','getRequestTarget','getUri','ContainerInterface','ContainerExceptionInterface','NotFoundExceptionInterface','has','CacheItemInterface','CacheItemPoolInterface','CacheException','getItem','getItems','hasItem','deleteItem','deleteItems','save','saveDeferred','commit','getKey','isHit','expiresAt','expiresAfter','RequestHandlerInterface','MiddlewareInterface','handle','process','CacheInterface','yaml_parse','yaml_parse_file','yaml_parse_url','yaml_emit','yaml_emit_file','YAML_ANY_SCALAR_STYLE','YAML_PLAIN_SCALAR_STYLE','YAML_SINGLE_QUOTED_SCALAR_STYLE','YAML_DOUBLE_QUOTED_SCALAR_STYLE','YAML_LITERAL_SCALAR_STYLE','YAML_FOLDED_SCALAR_STYLE','YAML_ANY_ENCODING','YAML_UTF8_ENCODING','YAML_UTF16LE_ENCODING','YAML_UTF16BE_ENCODING','YAML_ANY_BREAK','YAML_CR_BREAK','YAML_LN_BREAK','YAML_CRLN_BREAK','YAML_BOOL_TAG','YAML_FLOAT_TAG','YAML_INT_TAG','YAML_MAP_TAG','YAML_NULL_TAG','YAML_SEQ_TAG','YAML_STR_TAG','YAML_TIMESTAMP_TAG','T_ELLIPSIS','T_POW','T_POW_EQUAL','T_NULLSAFE_OBJECT_OPERATOR','SO_PASSCRED','SO_PEERCRED','SO_PRIORITY','SO_TYPE','MSG_CTRUNC','MSG_DONTWAIT','MSG_ERRQUEUE','MSG_FIN','MSG_MORE','MSG_NOSIGNAL','MSG_RST','MSG_SYN','MSG_TRUNC','SCM_RIGHTS','SCM_CREDENTIALS','share_setopt','share_close','share_errno','share_strerror','CURLSHOPT_SHARE','CURLSHOPT_UNSHARE','CURL_LOCK_DATA_COOKIE','CURL_LOCK_DATA_DNS','CURL_LOCK_DATA_SSL_SESSION','CURL_LOCK_DATA_CONNECT','CURL_LOCK_DATA_NONE','CURL_LOCK_DATA_SHARE','RD_KAFKA_RESP_ERR__BEGIN','RD_KAFKA_RESP_ERR__END','RD_KAFKA_RESP_ERR_NO_ERROR','RD_KAFKA_CONF_OK','RD_KAFKA_CONF_UNKNOWN','RD_KAFKA_CONF_INVALID','RD_KAFKA_MSG_PARTITION_UA','RD_KAFKA_OFFSET_BEGINNING','RD_KAFKA_OFFSET_END','RD_KAFKA_OFFSET_STORED','RD_KAFKA_OFFSET_INVALID','dba_open','dba_popen','dba_close','dba_delete','dba_exists','dba_fetch','dba_insert','dba_replace','dba_firstkey','dba_nextkey','dba_optimize','dba_sync','dba_handlers','dba_list','dba_key_split','gdbm','ndbm','dbm','cdb','cdb_make','db4','inifile','flatfile','qdbm','lmdb','ftp_connect','ftp_ssl_connect','ftp_login','ftp_close','ftp_quit','ftp_pwd','ftp_cdup','ftp_chdir','ftp_mkdir','ftp_rmdir','ftp_nlist','ftp_rawlist','ftp_systype','ftp_pasv','ftp_get','ftp_fget','ftp_put','ftp_fput','ftp_size','ftp_mdtm','ftp_rename','ftp_delete','ftp_site','ftp_alloc','ftp_chmod','ftp_set_option','ftp_get_option','ftp_nb_fget','ftp_nb_fput','ftp_nb_get','ftp_nb_put','ftp_nb_continue','FTP_ASCII','FTP_TEXT','FTP_BINARY','FTP_IMAGE','FTP_AUTOSEEK','FTP_AUTORESUME','FTP_FAILED','FTP_FINISHED','FTP_MOREDATA','FTP_TIMEOUT_SEC','FTP_USEPASVADDRESS','gzopen','gzclose','gzread','gzwrite','gzgets','gzgetc','gzputs','gzpassthru','gzseek','gztell','gzeof','gzrewind','gzcompress','gzuncompress','gzdeflate','gzinflate','gzencode','gzdecode','readgzfile','zlib_get_coding_type','FORCE_GZIP','FORCE_DEFLATE','ZLIB_ENCODING_RAW','ZLIB_ENCODING_DEFLATE','ZLIB_ENCODING_GZIP','ZLIB_FILTERED','ZLIB_HUFFMAN_ONLY','ZLIB_FIXED','ZLIB_RLE','ZLIB_DEFAULT_STRATEGY','ZLIB_VERNUM','ZLIB_VERSION','XSLTProcessor','importStylesheet','transformToDoc','transformToUri','transformToXml','setParameter','getParameter','removeParameter','hasExsltSupport','registerPHPFunctions','setProfiling','setSecurityPrefs','getSecurityPrefs','LIBXSLT_VERSION','LIBXSLT_DOTTED_VERSION','LIBEXSLT_VERSION','LIBEXSLT_DOTTED_VERSION','XSL_SECPREF_NONE','XSL_SECPREF_READ_FILE','XSL_SECPREF_WRITE_FILE','XSL_SECPREF_CREATE_DIRECTORY','XSL_SECPREF_READ_NETWORK','XSL_SECPREF_WRITE_NETWORK','XSL_SECPREF_DEFAULT','snmpget','snmpgetnext','snmpwalk','snmprealwalk','snmpset','snmp2_get','snmp2_getnext','snmp2_walk','snmp2_realwalk','snmp2_set','snmp3_get','snmp3_getnext','snmp3_walk','snmp3_realwalk','snmp3_set','snmp_get_quick_print','snmp_set_quick_print','snmp_set_enum_print','snmp_set_oid_output_format','snmp_set_oid_numeric_print','snmp_set_valueretrieval','snmp_read_mib','SNMP','SNMPException','getErrno','getError','SNMP_VALUE_LIBRARY','SNMP_VALUE_PLAIN','SNMP_VALUE_OBJECT','SNMP_BIT_STR','SNMP_OCTET_STR','SNMP_OPAQUE','SNMP_NULL','SNMP_OBJECT_ID','SNMP_IPADDRESS','SNMP_COUNTER','SNMP_UNSIGNED','SNMP_TIMETICKS','SNMP_UINTEGER','SNMP_INTEGER','SNMP_COUNTER64','SNMP_VERSION_1','SNMP_VERSION_2c','SNMP_VERSION_2C','SNMP_VERSION_3','SNMP_SEC_LEVEL_NOAUTHNOPRIV','SNMP_SEC_LEVEL_AUTHNOPRIV','SNMP_SEC_LEVEL_AUTHPRIV','SNMP_OID_OUTPUT_SUFFIX','SNMP_OID_OUTPUT_MODULE','SNMP_OID_OUTPUT_FULL','SNMP_OID_OUTPUT_NUMERIC','SNMP_OID_OUTPUT_UCD','SNMP_OID_OUTPUT_NONE','SplType','SplInt','SplFloat','SplBool','SplString','SplEnum','__default','RecursiveCallbackFilterIterator','getChildren','getSubIterator','nextElement','hasNext','getCache','CALL_NEXT_AS_METHOD','CALL_HAS_NEXT_AS_METHOD','CATCH_GET_CHILD','MCAST_JOIN_GROUP','MCAST_LEAVE_GROUP','MCAST_BLOCK_SOURCE','MCAST_UNBLOCK_SOURCE','MCAST_JOIN_SOURCE_GROUP','MCAST_LEAVE_SOURCE_GROUP','IP_ADD_MEMBERSHIP','IP_DROP_MEMBERSHIP','IP_BLOCK_SOURCE','IP_UNBLOCK_SOURCE','IP_ADD_SOURCE_MEMBERSHIP','IP_DROP_SOURCE_MEMBERSHIP','SO_BINDTODEVICE','SO_MARK','SO_PEERSEC','SO_PASSSEC','SO_TIMESTAMP','SO_TIMESTAMPNS','SO_BUSY_POLL','CompileError','UserError','CoreWarning','CompileWarning','UserWarning','UserNotice','StrictError','DeprecatedError','UserDeprecatedError','convert_cyr_string','restore_include_path','get_required_files','highlight_file','highlight_string','php_strip_whitespace','show_source','memory_reset_peak_usage','sapi_windows_cp_get','sapi_windows_cp_set','sapi_windows_cp_is_utf8','PHP_WINDOWS_VERSION_MAJOR','PHP_WINDOWS_VERSION_MINOR','PHP_WINDOWS_VERSION_BUILD','PHP_WINDOWS_VERSION_PLATFORM','PHP_WINDOWS_VERSION_SP_MAJOR','PHP_WINDOWS_VERSION_SP_MINOR','PHP_WINDOWS_VERSION_SUITEMASK','PHP_WINDOWS_VERSION_PRODUCTTYPE','PHP_WINDOWS_NT_DOMAIN_CONTROLLER','PHP_WINDOWS_NT_SERVER','PHP_WINDOWS_NT_WORKSTATION','CONNECTION_ABORTED','CONNECTION_NORMAL','CONNECTION_TIMEOUT','connection_status','connection_aborted','ASSERT_ACTIVE','ASSERT_WARNING','ASSERT_BAIL','ASSERT_QUIET_EVAL','ASSERT_CALLBACK','INPUT_POST','INPUT_GET','INPUT_COOKIE','INPUT_SERVER','INPUT_ENV','CHAR_CATEGORY_UNASSIGNED','CHAR_CATEGORY_UPPERCASE_LETTER','CHAR_CATEGORY_LOWERCASE_LETTER','CHAR_CATEGORY_TITLECASE_LETTER','CHAR_CATEGORY_MODIFIER_LETTER','CHAR_CATEGORY_OTHER_LETTER','CHAR_CATEGORY_NON_SPACING_MARK','U_USING_FALLBACK_WARNING','U_USING_DEFAULT_WARNING','U_ERROR_WARNING_START','IntlGregorianCalendar','fromDateTime','toDateTime','getIDForWindowsID','getWindowsID','ResourceBundle','Transliterator','U_INVALID_CHAR_FOUND','U_TRUNCATED_CHAR_FOUND','U_ILLEGAL_CHAR_FOUND','getFilename','getMimeType','getPostFilename','setMimeType','setPostFilename','T_NULLABLE_TYPE_DECLARATION','T_TYPE_IDENTIFIER','T_TYPE_UNION','T_TYPE_INTERSECTION','COUNT_NORMAL','COUNT_RECURSIVE','mapPhar','mount','webPhar','unlinkArchive','interceptFileFuncs','KEY_NONE','KEY_PREFIX_ALL','KEY_PREFIX_SUBSTRING','KEY_REGEXP','PharFileInfo','getCompressedSize','isCompressed','setCompressedBZIP2','setCompressedGZ','setUncompressed','getCRC32','PharData','getMetadata','getStub','setFile','setMetadata','setStub','PharException','PharIoException','sybase_connect','sybase_pconnect','sybase_close','sybase_select_db','sybase_query','sybase_unbuffered_query','sybase_free_result','sybase_fetch_array','sybase_fetch_assoc','sybase_fetch_object','sybase_fetch_row','sybase_data_seek','sybase_num_rows','sybase_num_fields','sybase_result','sybase_field_seek','sybase_get_last_message','sybase_min_client_severity','sybase_min_server_severity','sybase_set_message_handler','pg_connect','pg_pconnect','pg_connect_poll','pg_close','pg_connection_status','pg_connection_busy','pg_connection_reset',
'pg_host','pg_port','pg_tty','pg_options','pg_dbname','pg_version','pg_ping','pg_query','pg_query_params','pg_prepare','pg_execute','pg_send_query','pg_send_query_params','pg_send_prepare','pg_send_execute','pg_cancel_query','pg_get_result','pg_fetch_result','pg_fetch_row','pg_fetch_assoc','pg_fetch_array','pg_fetch_object','pg_fetch_all','pg_fetch_all_columns','pg_affected_rows','pg_num_rows','pg_num_fields','pg_field_name','pg_field_num','pg_field_size','pg_field_type','pg_field_type_oid','pg_field_prtlen','pg_field_is_null','pg_free_result','pg_last_oid','pg_trace','pg_untrace','pg_lo_create','pg_lo_open','pg_lo_close','pg_lo_read','pg_lo_write','pg_lo_read_all','pg_lo_import','pg_lo_export','pg_lo_seek','pg_lo_tell','pg_lo_truncate','pg_lo_unlink','pg_set_error_verbosity','pg_last_error','pg_last_notice','pg_put_line','pg_end_copy','pg_copy_to','pg_copy_from','pg_escape_bytea','pg_unescape_bytea','pg_escape_literal','pg_escape_identifier','pg_meta_data','pg_convert','pg_insert','pg_update','pg_delete','pg_select','pg_set_client_encoding','pg_client_encoding','pg_parameter_status','pg_transaction_status','pg_get_pid','pg_get_notify','PGSQL_CONNECT_FORCE_NEW','PGSQL_CONNECT_ASYNC','PGSQL_ASSOC','PGSQL_NUM','PGSQL_BOTH','PGSQL_CONNECTION_OK','PGSQL_CONNECTION_BAD','PGSQL_CONNECTION_STARTED','PGSQL_CONNECTION_MADE','PGSQL_CONNECTION_AWAITING_RESPONSE','PGSQL_CONNECTION_AUTH_OK','PGSQL_CONNECTION_SETENV','PGSQL_SEEK_SET','PGSQL_SEEK_CUR','PGSQL_SEEK_END','PGSQL_EMPTY_QUERY','PGSQL_COMMAND_OK','PGSQL_TUPLES_OK','PGSQL_COPY_OUT','PGSQL_COPY_IN','PGSQL_COPY_BOTH','PGSQL_BAD_RESPONSE','PGSQL_NONFATAL_ERROR','PGSQL_FATAL_ERROR','PGSQL_ERRORS_TERSE','PGSQL_ERRORS_DEFAULT','PGSQL_ERRORS_VERBOSE','PGSQL_STATUS_LONG','PGSQL_STATUS_STRING','PGSQL_CONV_IGNORE_DEFAULT','PGSQL_CONV_IGNORE_NOT_NULL','PGSQL_CONV_FORCE_NULL','PGSQL_DML_NO_CONV','PGSQL_DML_EXEC','PGSQL_DML_ASYNC','PGSQL_DML_STRING','PGSQL_TRANSACTION_IDLE','PGSQL_TRANSACTION_ACTIVE','PGSQL_TRANSACTION_INTRANS','PGSQL_TRANSACTION_INERROR','PGSQL_TRANSACTION_UNKNOWN','PGSQL_DIAG_SEVERITY','PGSQL_DIAG_SQLSTATE','PGSQL_DIAG_MESSAGE_PRIMARY','PGSQL_DIAG_MESSAGE_DETAIL','PGSQL_DIAG_MESSAGE_HINT','PGSQL_DIAG_STATEMENT_POSITION','PGSQL_DIAG_INTERNAL_POSITION','PGSQL_DIAG_INTERNAL_QUERY','PGSQL_DIAG_CONTEXT','PGSQL_DIAG_SOURCE_FILE','PGSQL_DIAG_SOURCE_LINE','PGSQL_DIAG_SOURCE_FUNCTION','SODIUM_LIBRARY_VERSION','SODIUM_LIBRARY_MAJOR_VERSION','SODIUM_LIBRARY_MINOR_VERSION','SODIUM_CRYPTO_AEAD_AES256GCM_KEYBYTES','SODIUM_CRYPTO_AEAD_AES256GCM_NSECBYTES','SODIUM_CRYPTO_AEAD_AES256GCM_NPUBBYTES','SODIUM_CRYPTO_AEAD_AES256GCM_ABYTES','SODIUM_CRYPTO_AUTH_BYTES','SODIUM_CRYPTO_AUTH_KEYBYTES','SODIUM_CRYPTO_BOX_SEALBYTES','SODIUM_CRYPTO_BOX_SECRETKEYBYTES','SODIUM_CRYPTO_BOX_PUBLICKEYBYTES','SODIUM_CRYPTO_BOX_KEYPAIRBYTES','SODIUM_CRYPTO_BOX_MACBYTES','SODIUM_CRYPTO_BOX_NONCEBYTES','SODIUM_CRYPTO_BOX_SEEDBYTES','SODIUM_CRYPTO_KDF_BYTES_MIN','SODIUM_CRYPTO_KDF_BYTES_MAX','SODIUM_CRYPTO_KDF_CONTEXTBYTES','SODIUM_CRYPTO_KDF_KEYBYTES','SODIUM_CRYPTO_KX_PUBLICKEYBYTES','SODIUM_CRYPTO_KX_SECRETKEYBYTES','SODIUM_CRYPTO_KX_SEEDBYTES','SODIUM_CRYPTO_KX_SESSIONKEYBYTES','SODIUM_CRYPTO_PWHASH_ALG_ARGON2I13','SODIUM_CRYPTO_PWHASH_STRPREFIX','SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_SALTBYTES','SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_STRPREFIX','SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_INTERACTIVE','SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_INTERACTIVE','SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_SENSITIVE','SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_SENSITIVE','SODIUM_CRYPTO_SCALARMULT_BYTES','SODIUM_CRYPTO_SCALARMULT_SCALARBYTES','SODIUM_CRYPTO_SHORTHASH_BYTES','SODIUM_CRYPTO_SHORTHASH_KEYBYTES','SODIUM_CRYPTO_STREAM_KEYBYTES','SODIUM_CRYPTO_STREAM_NONCEBYTES','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_ABYTES','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_HEADERBYTES','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_KEYBYTES','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_PUSH','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_REKEY','SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_FINAL','sodium_crypto_kdf_derive_from_key','sodium_crypto_kdf_keygen','sodium_crypto_stream','sodium_crypto_stream_keygen','sodium_crypto_stream_xor','sodium_crypto_secretstream_xchacha20poly1305_init_push','sodium_crypto_secretstream_xchacha20poly1305_push','sodium_crypto_secretstream_xchacha20poly1305_init_pull','sodium_crypto_secretstream_xchacha20poly1305_pull','sodium_crypto_secretstream_xchacha20poly1305_rekey','sodium_crypto_secretstream_xchacha20poly1305_keygen','SolrClient','SolrInputDocument','SolrDocument','SolrQuery','SolrParams','SolrObject','SolrUtils','SolrException','SolrIllegalArgumentException','SolrIllegalOperationException','SolrMissingMandatoryParameterException','SolrClientException','SolrServerException','addDocument','addDocuments','deleteById','deleteByIds','deleteByQuery','optimize','ping','query','rollback','addField','deleteField','getFieldNames','addFacetField','addFilterQuery','setQuery','setRows','setStart','SolrResponse','SOLR_MAJOR_VERSION','SOLR_MINOR_VERSION','SOLR_PATCH_VERSION','SOLR_EXTENSION_VERSION','GRAPHEME_GRAPHEME_CLUSTER_BREAK','GRAPHEME_WORD_BREAK','GRAPHEME_LINE_BREAK','GRAPHEME_SENTENCE_BREAK','getInnerIterator','T_CHARACTER','T_ML_COMMENT','T_OLD_FUNCTION','T_ABSTRACT_METHOD','T_STATIC_METHOD','T_PUBLIC_METHOD','T_PRIVATE_METHOD','T_PROTECTED_METHOD','T_FINAL_METHOD','T_QUESTION_MARK','T_MODULO','T_MODULO_EQUAL','T_NOT_EQUAL_STRING','T_STRING_CONCAT','T_NAMESPACE_OPEN_BRACE','T_USE_OPEN_BRACE','T_GROUP_USE_PREFIX','IS_IMPLICIT_ABSTRACT','IS_EXPLICIT_ABSTRACT','IS_STATIC','IS_PUBLIC','IS_PROTECTED','IS_PRIVATE','IS_ABSTRACT','IS_FINAL','PHP_ROUND_HALF_UP','PHP_ROUND_HALF_DOWN','PHP_ROUND_HALF_EVEN','PHP_ROUND_HALF_ODD','INI_USER','INI_PERDIR','INI_SYSTEM','INI_ALL','CREDITS_GROUP','CREDITS_GENERAL','CREDITS_SAPI','CREDITS_MODULES','CREDITS_DOCS','CREDITS_FULLPAGE','CREDITS_QA','CREDITS_INTERNALS','STR_PAD_LEFT','STR_PAD_RIGHT','STR_PAD_BOTH','PREG_JIT','PREG_RECURSION_LIMIT','PREG_BACKTRACK_LIMIT','PCRE_DUPNAMES','PCRE_UNGREEDY','PCRE_EXTRA','PCRE_DOTALL','PCRE_MULTILINE','PCRE_CASELESS','PCRE_EXTENDED','PCRE_ANCHORED','PCRE_DOLLAR_ENDONLY','PCRE_INFO_JCHANGED','STREAM_META_TOUCH','STREAM_META_OWNER','STREAM_META_OWNER_NAME','STREAM_META_GROUP','STREAM_META_GROUP_NAME','STREAM_META_ACCESS',
];
$mergedSkipList = array_unique(array_merge($defaultSkipList, $skipList));
$map = [];
$generateName = function(string $prefix = 'obf', int $length = 16): string {
return $prefix . '_' . substr(bin2hex(random_bytes((int)($length / 2))), 0, $length);
};
$isValidIdentifier = fn(string $name): bool =>
preg_match('/^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$/', $name);
$rename = function(string $name, string $type) use (&$map, $customMap, $mergedSkipList, $generateName, $isValidIdentifier, $random_name, $config): string {
if ($config["obfuscate"] === false) {
return $name;
}
$plain = ltrim($name, '$');
if (in_array($plain, $mergedSkipList)) return $name;
if (isset($customMap[$plain])) {
$map[$plain] = $customMap[$plain];
return (str_starts_with($name, '$') ? '$' : '') . $customMap[$plain];
}
if (isset($map[$plain])) return (str_starts_with($name, '$') ? '$' : '') . $map[$plain];
if (!$random_name) {
$map[$plain] = $plain;
return $name;
}
$prefix = match ($type) {
'var' => 'var',
'func' => 'func',
'class' => 'cls',
'const' => 'const',
default => 'obf'
};
$attempts = 0;
do {
$new = $generateName($prefix);
$attempts++;
if ($attempts > 30) {
$map[$plain] = $plain;
return $name;
}
} while (!$isValidIdentifier($new) || in_array($new, array_values($map)));
$map[$plain] = $new;
return (str_starts_with($name, '$') ? '$' : '') . $new;
};
$tokens = token_get_all($code);
$result = '';
$skipNextWhitespace = false;
$lastType = null;
foreach ($tokens as $token) {
if (is_array($token)) {
[$id, $text] = $token;
switch ($id) {
case T_FUNCTION:
$lastType = 'func';
$result .= $text;
$skipNextWhitespace = false;
break;
case T_CLASS:
$lastType = 'class';
$result .= $text;
$skipNextWhitespace = false;
break;
case T_CONST:
$lastType = 'const';
$result .= $text;
$skipNextWhitespace = false;
break;
case T_VARIABLE:
$result .= $rename($text, 'var');
$skipNextWhitespace = false;
break;
case T_STRING:
$result .= $rename($text, $lastType ?? 'auto');
$lastType = null;
$skipNextWhitespace = false;
break;
case T_CONSTANT_ENCAPSED_STRING:
$result .= $text;
$skipNextWhitespace = false;
break;
case T_COMMENT:
case T_DOC_COMMENT:
$skipNextWhitespace = true;
break;
case T_WHITESPACE:
if (!$skipNextWhitespace) $result .= ' ';
$skipNextWhitespace = true;
break;
default:
$result .= $text;
$skipNextWhitespace = false;
break;
}
} else {
$result .= $token;
$skipNextWhitespace = false;
}
}
$finalSkip = array_values(array_diff($mergedSkipList, $defaultSkipList));
$config = [
"key" => $config["key"],
"pass" => $config["pass"],
"license" => $config["license"],
"device" => $config["device"],
"expiry" => $config["expiry"],
"obfuscate" => $config["obfuscate"],
"minify" => $config["minify"]
];
$result = phob_build(trim($result), $output, $skip, $config);
if ($result && $result !== false) {
$out = null;
if (!is_array($output) && is_string($output) && $output) {
if (file_exists($file_path)) {
$file_content = file_get_contents($output);
if ($file_content !== false) {
$out = $file_content;
} else {
$out = null;
}
} else {
$out = null;
}
} else {
$out = null;
}
return array(
"status" => true,
"message" => "File built successfully.",
"code" => $out,
'map' => $map,
'skip' => $finalSkip,
'custom' => $customMap,
"config" => [
"key" => $config["key"],
"pass" => $config["pass"],
"license" => $config["license"],
"device" => $config["device"],
"expiry" => $config["expiry"],
"obfuscate" => $config["obfuscate"],
"minify" => $config["minify"]
]
);
} else {
return array(
"status" => false,
"message" => "Failed to build the file.",
"code" => null,
'map' => null,
'skip' => $finalSkip,
'custom' => $customMap,
"config" => [
"key" => $config["key"],
"pass" => $config["pass"],
"license" => $config["license"],
"device" => $config["device"],
"expiry" => $config["expiry"]
]
);
}
} else {
$config = [
"key" => $config["key"],
"pass" => $config["pass"],
"license" => $config["license"],
"device" => $config["device"],
"expiry" => $config["expiry"]
];
$result = phob_build($input, $output, $skip, $config);
if ($result && $result !== false) {
$out = null;
if (!is_array($output) && is_string($output) && $output) {
if (file_exists($file_path)) {
$file_content = file_get_contents($output);
if ($file_content !== false) {
$out = $file_content;
} else {
$out = null;
}
} else {
$out = null;
}
} else {
$out = null;
}
return array(
"status" => true,
"message" => "File built successfully.",
"code" => $out,
"config" => [
"key" => $config["key"],
"pass" => $config["pass"],
"license" => $config["license"],
"device" => $config["device"],
"expiry" => $config["expiry"]
]
);
} else {
return array(
"status" => false,
"message" => "Failed to build the file.",
"code" => null,
"config" => [
"key" => $config["key"],
"pass" => $config["pass"],
"license" => $config["license"],
"device" => $config["device"],
"expiry" => $config["expiry"]
]
);
}
}
}
}
protected static function isAbsolutePath(string $path): bool {
return preg_match('/^(\/|[a-zA-Z]:[\/\\\\]|[a-zA-Z0-9_\-]+:\/\/)/', $path) === 1;
}
/**
* Execute a PHOB-protected file after verifying security constraints
*
* @param string $inputPath Path to the protected file
* @return bool True on successful execution, false on failure
* @throws RuntimeException If PHOB is not initialized
*/
public static function use(string $file, string $lisense) {
if (self::ext() === true) {
if (!self::isAbsolutePath($file)) {
$backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1);
$callerFile = $backtrace[0]['file'] ?? '';
$callerDir = dirname($callerFile);
$file = $callerDir . DIRECTORY_SEPARATOR . $file;
}
$fullPath = realpath($file);
if ($fullPath && is_readable($fullPath)) {
$content = file_get_contents($fullPath);
if ($content !== false) {
$decoded = phob_use($fullPath, $lisense);
return $decoded;
}
} else {
throw new Exception("File not found or not readable: $file", 1);
}
}
}
/**
* Get the unique device ID for the current machine
*
* @return string|bool Device ID string or false on failure
* @throws RuntimeException If PHOB is not initialized
*/
public static function deviceID() {
if (self::ext() === true) {
return phob_deviceID();
}
}
}
?>