PHP capability comparison

How tracked PHP language and stdlib features (reference: php-src / Zend PHP) compare to php-compiler on VM, JIT, and AOT. This is not a full php-src inventory — only items we measure in capabilities-syntax.md and capabilities.md. Generated 2026-08-23 (matrix mtime).

Language constructs
78 / 89 full (VM+JIT+AOT)

4 partial · 7 gaps

Stdlib builtins
1117 / 1167 full (VM+JIT+AOT)

13 partial · 37 gaps

Legend

yes supported · partial subset · no not yet · PHP column = reference has the feature

Language constructs

Classes, control flow, types, and related syntax from the language matrix.

FeaturePHPVMJITAOTIssue
`class` / `new`yesyesyesyes#58
Anonymous class `new class { }`yesyesyesyes#1233
Enum declarations `enum Foo: string { case Bar = 'x'; }`yesyesyesyes#1356
Abstract enum `abstract enum E { case A; }`yesnonono#26519
Instance methods (`ClassMethod` / `Expr_MethodCall`)yesyesyesyes#58
Static methods on user classes (`Expr_StaticCall`)yesyesyesyes#2209
Constructors (`__construct`)yesyesyesyes#145
`clone` + `__clone()` magic methodyesyesyesyes#3170
PHP 8.5+ `clone($obj, ['prop' => $value])`yesyesyesyes#4513
Magic methods `__get` / `__set` / `__call` / `__toString`yesyesyesyes#146
Private methodsyesyesyesyes#145
Property fetch `$this->x`yesyesyesyes#58
Constructor property promotionyesyesyesyes#1359
Method return types (`: string` / `: void`)yesyesyesyes#55
Dynamic property access `$obj->$name`yesyesyesyes#1227
Variable function call `$fn()`yesyesyesyes#56
Native user-class link (`phpc build --project`)yesyesyesyes#764
`instanceof`yesyesyesyes#138
`instanceof` union RHS `(AyesB)`yesyesyes
`in` operator (`$needle in $haystack`) — not in php-srcyesnonono#31158
`match` expressionyesyesyesyes#143
Closures `function () { }` / `use ($var)`yesyesyesyes#72
Arrow functions `fn () =>`yesyesyesyes#142
Generators (`yield` / `foreach`)yesyesyesyes#167
Fibers (`Fiber`, `Fiber::suspend()`, start/resume)yesyesyesyes#3130
`ClassName::class` / `static::class`yesyesyesyes#740
Class member constants `public` / `private` / `protected const`yesyesyesyes#2199
PHP 8.3 typed class constants (`const array X = [1,2];`, `const string S = 'a';`)yesyesyesno#3592
PHP 8.3+ file/namespace typed constants (`const string X = 'a';`)yesyesyesno#7081
PHP 8.3 typed interface constants (`interface I { public const string X = 'a'; }`)yesyesyesno#5980
Class constants with `new` object expressionsyesnonono#21493
Late static binding `static::method()` / `static::class`yesyesyesyes#1231
`new static()` and `: static` return type (late-bound class)yesyesyesyes#3412
Magic constants `__CLASS__`, `__METHOD__`, `__FUNCTION__`yesyesyesyes#199
Magic constant `__NAMESPACE__`yesyesyesyes#199
Magic constants `__DIR__`, `__FILE__`yesyesyesyes#707
Magic constant `__LINE__`yesyesyesyes#715
Literal `include`/`require` with `__DIR__`yesyesyesyes#475
foreach by-reference (`&$v`)yesyesyesyes#1222
foreach over Iterator / IteratorAggregate objectsyesyesyesyes#4067
ArrayAccess interface — `$obj[$key]` read/write/isset/unsetyesyesyesyes#3331
By-reference parameters (`function f(&$x)`)yesyesyesyes#140
Return-by-reference (`function &f()` / `$x = &f()`)yesyesyesyes#4054
Static property `Class::$prop`yesyesyesyes#1225
Error-control operator `@` on expressionsyesyesyesyes#3546
`unset()` on variables, array offsets, and object propertiesyesyesyesyes#2273
Function-local `static $var` / `static $var = <literal>`yesyesyesyes#2286
PHP 8.3+ typed function-local static (`static T $var`)yesyesyesyes#9998
Keyed array destructuring (`["a" => $x]`)yesyesyesyes#1234
`goto` / labels (function scope)yesyesyesyes#1228
`declare(strict_types=1)` scalar parameter checksyesyesyesyes#1229
PHP 8.3+ generic array types `list<T>` / `array<K,V>` (parameters and properties)yesyesyesyes#3705
Variable variables (`$$name`)yesyesyesyes#1226
Variable function calls (`$fn()`)yesyesyesyes#56
Invokable objects (`$obj()` / `__invoke`)yesyesyesyes#1232
First-class callable syntax (`foo(...)`, `Class::m(...)`)yesyesyesyes#1363
PHP 8.5 pipe operator (`yes>`)yesyesyes
`use function` / `use const` importsyesyesyesyes#2325
Namespace group use (`use Foo\{Bar, Baz}`)yesyesyesyes#2443
Flexible heredoc/nowdoc indentation stripping (PHP 7.3+)yesyesyesyes#3636
`never` return typeyesyesyesyes#1358
Intersection types (`A&B`)yesyesyesyes#1357
DNF types (`(A&B)yesnull`, union of intersections)yesyesyes
`trait` declarations with method bodiesyesyesyesyes#2312
Simple `use Trait;` in class bodyyesyesyesyes#2314
Trait use adaptations (`as` rename, `insteadof` precedence)yesyesyesyes#3238
Built-in `LazyGhostTrait` marker (PHP 8.4 lazy objects)yesyesyesyes#6096
Array/argument unpack `...$x`yesyesyesyes#1361
`__serialize` / `__unserialize` magic methodsyesyesyesyes#1365
Multi-type catch `catch (AyesB $e)` (union only; `A&B` ParseError like Zend)yesyesyes
`try` / `catch` / `throw`yesyesyesyes#57
throw expressions (PHP 8.0) — `throw` in expression contextyesyesyesyes#3802
readonly classesyesyesyesyes#1360
readonly properties (per-property)yesyesyesyes#3149
Property hooks (`get` / `set` on properties)yesyesyesyes#3145
PHP 8.4 asymmetric property visibility (private(set), protected(set), etc.)yesyesyesyes#3165
User __destruct()yesyesyesyes#4096
PHP 8 attributes — `ReflectionClass` / `ReflectionMethod` metadatayesyesyesyes#1936
WeakReference / WeakMapyesyesyesyes#3667
Heredoc / nowdoc string literals (`<<<LABEL` / `<<<'LABEL'`)yesyesyesyes#3187
DateTime / DateTimeZone OOPyesyesnono#3072
`ksort()` (string/int keys, preserve values)yesyesyesyes#2271
`krsort()` (keys descending)yesyesyesyes#2282
`asort()` (values ascending, preserve keys)yesyesyesyes#2290
`arsort()` (values descending, preserve keys)yesyesyesyes#2296
`rsort()` (values descending, reindex)yesyesyesyes#2300
`shuffle()` (packed list, Fisher–Yates)yesyesyesyes#2310
`array_rand()` (packed list keys)yesyesyesyes#2321
`array_merge()` on string-key associative arraysyesyesyesyes#2287

Stdlib builtins

Internal functions registered in ext/standard and ext/types.

FeaturePHPVMJITAOTIssue
`__compiler_is_superglobal_name`yesyesyesyes
`__compiler_libcrypt`yesyesyesyes
`__compiler_password_random_bytes`yesyesyesyes
`__halt_compiler`yesyesyesyes
`abs`yesyesyesyes
`acos`yesyesyesyes
`acosh`yesyesyesyes
`addcslashes`yesyesyesyes
`addslashes`yesyesyesyes
`array_change_key_case`yesyesyesyes
`array_chunk`yesyesyesyes
`array_column`yesyesyesyes
`array_combine`yesyesyesyes
`array_count_values`yesyesyesyes
`array_diff`yesyesyesyes
`array_diff_assoc`yesyesyesyes
`array_diff_key`yesyesyesyes
`array_diff_uassoc`yesyesyesyes
`array_diff_ukey`yesyesyesyes
`array_fill`yesyesyesyes
`array_fill_keys`yesyesyesyes
`array_filter`yesyesyesyes
`array_flip`yesyesyesyes
`array_intersect`yesyesyesyes
`array_intersect_assoc`yesyesyesyes
`array_intersect_key`yesyesyesyes
`array_intersect_uassoc`yesyesyesyes
`array_intersect_ukey`yesyesyesyes
`array_is_list`yesyesyesyes
`array_key_exists`yesyesyesyes
`array_key_first`yesyesyesyes
`array_key_last`yesyesyesyes
`array_keys`yesyesyesyes
`array_map`yesyesyesyes
`array_merge`yesyesyesyes
`array_merge_recursive`yesyesyesyes
`array_multisort`yesyesyesyes
`array_pad`yesyesyesyes
`array_pop`yesyesyesyes
`array_product`yesyesyesyes
`array_push`yesyesyesyes
`array_rand`yesyesyesyes
`array_reduce`yesyesyesyes
`array_replace`yesyesyesyes
`array_replace_recursive`yesyesyesyes
`array_reverse`yesyesyesyes
`array_search`yesyesyesyes
`array_shift`yesyesyesyes
`array_slice`yesyesyesyes
`array_splice`yesyesyesyes
`array_sum`yesyesyesyes
`array_udiff`yesyesyesyes
`array_udiff_assoc`yesyesyesyes
`array_udiff_uassoc`yesyesyesyes
`array_uintersect`yesyesyesyes
`array_uintersect_assoc`yesyesyesyes
`array_uintersect_uassoc`yesyesyesyes
`array_unique`yesyesyesyes
`array_unshift`yesyesyesyes
`array_values`yesyesyesyes
`array_walk`yesyesyesyes
`array_walk_recursive`yesyesyesyes
`arsort`yesyesyesyes
`asin`yesyesyesyes
`asinh`yesyesyesyes
`asort`yesyesyesyes
`assert`yesyesyesyes
`assert_options`yesyesyesyes
`atan`yesyesyesyes
`atan2`yesyesyesyes
`atanh`yesyesyesyes
`attribute_exists`yesnonono
`base64_decode`yesyesyesyes
`base64_encode`yesyesyesyes
`base_convert`yesyesyesyes
`basename`yesyesyesyes
`bin2hex`yesyesyesyes
`bindec`yesyesyesyes
`boolval`yesyesyesyes
`call_user_func`yesyesyesyes
`call_user_func_array`yesyesyesyes
`ceil`yesyesyesyes
`chdir`yesyesyesyes
`checkdate`yesyesyesyes
`checkdnsrr`yesyesyesyes
`chgrp`yesyesyesyes
`chmod`yesyesyesyes
`chop`yesyesyesyes
`chown`yesyesyesyes
`chr`yesyesyesyes
`chroot`yesyesyesyes
`chunk_split`yesyesyesyes
`clamp`yesnonono
`class_alias`yesyesyesyes
`class_exists`yesyesyesyes
`class_implements`yesyesyesyes
`class_meth_exists`yesnonono
`class_parents`yesyesyesyes
`class_uses`yesyesyesyes
`class_uses_recursive`yesnonono
`clearstatcache`yesyesyesyes
`cli_get_process_title`yesyesyesyes
`cli_set_process_title`yesyesyesyes
`closedir`yesyesyesyes
`closelog`yesyesyesyes
`compact`yesyesyesyes
`compiler_language_warning`yesyesyesyes
`connection_aborted`yesyesyesyes
`connection_status`yesyesyesyes
`constant`yesyesyesyes
`convert_cyr_string`yesnonono
`convert_uudecode`yesyesyesyes
`convert_uuencode`yesyesyesyes
`copy`yesyesyesyes
`cos`yesyesyesyes
`cosh`yesyesyesyes
`count`yesyesyesyes
`count_chars`yesyesyesyes
`crc32`yesyesyesyes
`crc32c`yesnonono
`crypt`yesyesyesyes
`ctype_alnum`yesyesyesyes
`ctype_alpha`yesyesyesyes
`ctype_cntrl`yesyesyesyes
`ctype_digit`yesyesyesyes
`ctype_graph`yesyesyesyes
`ctype_lower`yesyesyesyes
`ctype_print`yesyesyesyes
`ctype_punct`yesyesyesyes
`ctype_space`yesyesyesyes
`ctype_upper`yesyesyesyes
`ctype_xdigit`yesyesyesyes
`current`yesyesyesyes
`date`yesyesyesyes
`date_add`yesyesyesyes
`date_create`yesyesyesyes
`date_create_from_format`yesyesyesyes
`date_create_immutable`yesyesyesyes
`date_create_immutable_from_format`yesyesyesyes
`date_date_set`yesyesyesyes
`date_default_timezone_get`yesyesyesyes
`date_default_timezone_set`yesyesyesyes
`date_diff`yesyesyesyes
`date_format`yesyesyesyes
`date_get_last_errors`yesyesyesyes
`date_interval_create_from_date_string`yesyesyesyes
`date_interval_format`yesyesyesyes
`date_isodate_set`yesyesyesyes
`date_modify`yesyesyesyes
`date_offset_get`yesyesyesyes
`date_parse`yesyesyesyes
`date_parse_from_format`yesyesyesyes
`date_sub`yesyesyesyes
`date_sun_info`yesyesyesyes
`date_sunrise`yesyesyesyes
`date_sunset`yesyesyesyes
`date_time_set`yesyesyesyes
`date_timestamp_get`yesyesyesyes
`date_timestamp_set`yesyesyesyes
`date_timezone_get`yesyesyesyes
`date_timezone_set`yesyesyesyes
`debug_backtrace`yesyesyesyes
`debug_print_backtrace`yesyesyesyes
`debug_zval_dump`yesyesyesyes
`decbin`yesyesyesyes
`dechex`yesyesyesyes
`decoct`yesyesyesyes
`define`yesyesyesyes
`defined`yesyesyesyes
`deflate_add`yesyesyesyes
`deflate_init`yesyesyesyes
`deg2rad`yesyesyesyes
`die`yesyesyesyes
`dir`yesyesyesyes
`dirname`yesyesyesyes
`disk_free_space`yesyesyesyes
`disk_total_space`yesyesyesyes
`diskfreespace`yesyesyesyes
`dl`yesyesyesyes
`dns_check_record`yesyesyesyes
`dns_get_mx`yesyesyesyes
`dns_get_record`yesyesyesyes
`doubleval`yesyesyesyes
`end`yesyesyesyes
`enum_exists`yesyesyesyes
`error_clear_last`yesyesyesyes
`error_get_last`yesyesyesyes
`error_log`yesyesyesyes
`error_reporting`yesyesyesyes
`escapeshellarg`yesyesyesyes
`escapeshellcmd`yesyesyesyes
`eval`yesyesyesyes
`exec`yesyesyesyes
`exif_tagname`yesyesyesyes
`exit`yesyesyesyes
`exp`yesyesyesyes
`explode`yesyesyesyes
`expm1`yesyesyesyes
`extension_loaded`yesyesyesyes
`extract`yesyesyesyes
`fadd`yesnonono
`fclose`yesyesyesyes
`fdatasync`yesyesyesyes
`fdiv`yesyesyesyes
`feof`yesyesyesyes
`fflush`yesyesyesyes
`fgetc`yesyesyesyes
`fgetcsv`yesyesyesyes
`fgets`yesyesyesyes
`file`yesyesyesyes
`file_exists`yesyesyesyes
`file_get_contents`yesyesyesyes
`file_put_contents`yesyesyesyes
`fileatime`yesyesyesyes
`filectime`yesyesyesyes
`filegroup`yesyesyesyes
`fileinode`yesyesyesyes
`filemtime`yesyesyesyes
`fileowner`yesyesyesyes
`fileperms`yesyesyesyes
`filesize`yesyesyesyes
`filetype`yesyesyesyes
`filter_has_var`yesyesyesyes
`filter_id`yesyesyesyes
`filter_input`yesyesyesyes
`filter_input_array`yesyesyesyes
`filter_list`yesyesyesyes
`filter_var`yesyesyesyes
`filter_var_array`yesyesyesyes
`finfo_buffer`yesyesyesyes
`finfo_close`yesyesnono
`finfo_file`yesyesyesyes
`finfo_open`yesyesnono
`finfo_set_flags`yesyesnono
`floatval`yesyesyesyes
`flock`yesyesyesyes
`floor`yesyesyesyes
`flush`yesyesyesyes
`fmax`yesnonono
`fmin`yesnonono
`fmod`yesyesyesyes
`fmul`yesnonono
`fnmatch`yesyesyesyes
`fopen`yesyesyesyes
`forward_static_call`yesyesyesyes
`forward_static_call_array`yesyesyesyes
`fpassthru`yesyesyesyes
`fpow`yesnonono
`fprintf`yesyesyesyes
`fputcsv`yesyesyesyes
`fputs`yesyesyesyes
`fread`yesyesyesyes
`fscanf`yesyesyesyes
`fseek`yesyesyesyes
`fsockopen`yesyesyesyes
`fstat`yesyesyesyes
`fsub`yesnonono
`fsync`yesyesyesyes
`ftell`yesyesyesyes
`ftok`yesyesyesyes
`ftruncate`yesyesyesyes
`func_get_arg`yesyesyesyes
`func_get_args`yesyesyesyes
`func_num_args`yesyesyesyes
`function_exists`yesyesyesyes
`fwrite`yesyesyesyes
`gc_collect_cycles`yesyesyesyes
`gc_disable`yesyesyesyes
`gc_enable`yesyesyesyes
`gc_enabled`yesyesyesyes
`gc_mem_caches`yesyesyesyes
`gc_status`yesyesyesyes
`generator_to_array`yesnonono
`get_browser`yesyesyesyes
`get_called_class`yesyesyesyes
`get_cfg_var`yesyesyesyes
`get_class`yesyesyesyes
`get_class_methods`yesyesyesyes
`get_class_vars`yesyesyesyes
`get_current_user`yesyesyesyes
`get_debug_type`yesyesyesyes
`get_declared_classes`yesyesyesyes
`get_declared_interfaces`yesyesyesyes
`get_declared_traits`yesyesyesyes
`get_defined_constants`yesyesyesyes
`get_defined_functions`yesyesyesyes
`get_defined_vars`yesyesyesyes
`get_extension_funcs`yesyesyesyes
`get_headers`yesyesyesyes
`get_html_translation_table`yesyesyesyes
`get_include_path`yesyesyesyes
`get_included_files`yesyesyesyes
`get_last_response_headers`yesnonono
`get_loaded_extensions`yesyesyesyes
`get_mangled_object_vars`yesyesyesyes
`get_meta_tags`yesyesyesyes
`get_object_vars`yesyesyesyes
`get_parent_class`yesyesyesyes
`get_required_files`yesyesyesyes
`get_resource_id`yesyesyesyes
`get_resource_type`yesyesyesyes
`get_resources`yesyesyesyes
`getcwd`yesyesyesyes
`getdate`yesyesyesyes
`getenv`yesyesyesyes
`gethostbyaddr`yesyesyesyes
`gethostbyname`yesyesyesyes
`gethostbynamel`yesyesyesyes
`gethostname`yesyesyesyes
`getimagesize`yesyesyesyes
`getimagesizefromstring`yesyesyesyes
`getlastmod`yesyesyesyes
`getmxrr`yesyesyesyes
`getmygid`yesyesyesyes
`getmygrgid`yesnonono
`getmyinode`yesyesyesyes
`getmypid`yesyesyesyes
`getmyuid`yesyesyesyes
`getopt`yesyesyesyes
`getprotobyname`yesyesyesyes
`getprotobynumber`yesyesyesyes
`getrandmax`yesyesyesyes
`getrusage`yesyesyesyes
`getservbyname`yesyesyesyes
`getservbyport`yesyesyesyes
`gettimeofday`yesyesyesyes
`gettype`yesyesyesyes
`glob`yesyesyesyes
`gmdate`yesyesyesyes
`gmmktime`yesyesyesyes
`gmstrftime`yesyesyesyes
`grapheme_levenshtein`yesnonono
`gzclose`yesyesyesyes
`gzcompress`yesyesyesyes
`gzdecode`yesyesyesyes
`gzdeflate`yesyesyesyes
`gzencode`yesyesyesyes
`gzeof`yesyesyesyes
`gzfile`yesyesyesyes
`gzgetc`yesyesyesyes
`gzgets`yesyesyesyes
`gzinflate`yesyesyesyes
`gzopen`yesyesyesyes
`gzpassthru`yesyesyesyes
`gzputs`yesyesyesyes
`gzread`yesyesyesyes
`gzrewind`yesyesyesyes
`gzseek`yesyesyesyes
`gztell`yesyesyesyes
`gzuncompress`yesyesyesyes
`gzwrite`yesyesyesyes
`hash`yesyesyesyes
`hash_equals`yesyesyesyes
`hash_hkdf`yesyesyesyes
`hash_hmac`yesyesyesyes
`hash_hmac_algos`yesyesyesyes
`hash_pbkdf2`yesyesyesyes
`header`yesyesyesyes
`header_register_callback`yesyesyesyes
`header_remove`yesyesyesyes
`headers_list`yesyesyesyes
`headers_sent`yesyesyesyes
`hebrev`yesyesyesyes
`hex2bin`yesyesyesyes
`hexdec`yesyesyesyes
`highlight_file`yesyesyesyes
`highlight_string`yesyesyesyes
`hrtime`yesyesyesyes
`html_entity_decode`yesyesyesyes
`htmlentities`yesyesyesyes
`htmlspecialchars`yesyesyesyes
`htmlspecialchars_decode`yesyesyesyes
`http_build_query`yesyesyesyes
`http_response_code`yesyesyesyes
`hypot`yesyesyesyes
`iconv`yesyesyesyes
`iconv_get_encoding`yesyesyesyes
`iconv_mime_decode`yesyesyesyes
`iconv_mime_decode_headers`yesyesyesyes
`iconv_mime_encode`yesyesyesyes
`iconv_set_encoding`yesyesyesyes
`iconv_strlen`yesyesyesyes
`iconv_strpos`yesyesyesyes
`iconv_strrpos`yesyesyesyes
`iconv_substr`yesyesyesyes
`idate`yesyesyesyes
`ignore_user_abort`yesyesyesyes
`image_type_to_extension`yesyesyesyes
`image_type_to_mime_type`yesyesyesyes
`implode`yesyesyesyes
`in_array`yesyesyesyes
`inet_ntop`yesyesyesyes
`inet_pton`yesyesyesyes
`inflate_add`yesyesyesyes
`inflate_get_read_len`yesyesyesyes
`inflate_get_status`yesyesyesyes
`inflate_init`yesyesyesyes
`ini_alter`yesyesyesyes
`ini_get`yesyesyesyes
`ini_get_all`yesyesyesyes
`ini_parse_quantity`yesyesyesyes
`ini_restore`yesyesyesyes
`ini_set`yesyesyesyes
`intdiv`yesyesyesyes
`interface_exists`yesyesyesyes
`intval`yesyesyesyes
`ip2long`yesyesyesyes
`iptcembed`yesyesyesyes
`iptcparse`yesyesyesyes
`isAnonymousClass`yesnonono
`is_a`yesyesyesyes
`is_array`yesyesyesyes
`is_bool`yesyesyesyes
`is_callable`yesyesyesyes
`is_countable`yesyesyesyes
`is_dir`yesyesyesyes
`is_double`yesyesyesyes
`is_executable`yesyesyesyes
`is_file`yesyesyesyes
`is_finite`yesyesyesyes
`is_float`yesyesyesyes
`is_infinite`yesyesyesyes
`is_int`yesyesyesyes
`is_integer`yesyesyesyes
`is_iterable`yesyesyesyes
`is_link`yesyesyesyes
`is_long`yesyesyesyes
`is_nan`yesyesyesyes
`is_null`yesyesyesyes
`is_numeric`yesyesyesyes
`is_object`yesyesyesyes
`is_readable`yesyesyesyes
`is_resource`yesyesyesyes
`is_scalar`yesyesyesyes
`is_string`yesyesyesyes
`is_subclass_of`yesyesyesyes
`is_uploaded_file`yesyesyesyes
`is_writable`yesyesyesyes
`is_writeable`yesyesyesyes
`iterator_apply`yesyesyesyes
`iterator_count`yesyesyesyes
`iterator_to_array`yesyesyesyes
`join`yesyesyesyes
`json_decode`yesyesyesyes
`json_encode`yesyesyesyes
`json_last_error`yesyesyesyes
`json_last_error_msg`yesyesyesyes
`json_validate`yesnonono
`key`yesyesyesyes
`key_exists`yesyesyesyes
`krsort`yesyesyesyes
`ksort`yesyesyesyes
`lcfirst`yesyesyesyes
`lcg_value`yesyesyesyes
`lchgrp`yesyesyesyes
`lchown`yesyesyesyes
`levenshtein`yesyesyesyes
`link`yesyesyesyes
`linkinfo`yesyesyesyes
`localeconv`yesyesyesyes
`localtime`yesyesyesyes
`log`yesyesyesyes
`log10`yesyesyesyes
`log1p`yesyesyesyes
`long2ip`yesyesyesyes
`lstat`yesyesyesyes
`ltrim`yesyesyesyes
`mail`yesyesyesyes
`max`yesyesyesyes
`mb_check_encoding`yesyesyesyes
`mb_chr`yesyesyesyes
`mb_convert_case`yesyesyesyes
`mb_convert_encoding`yesyesyesyes
`mb_convert_kana`yesyesyesyes
`mb_convert_variables`yesyesyesyes
`mb_decode_mimeheader`yesyesyesyes
`mb_decode_numericentity`yesyesyesyes
`mb_detect_encoding`yesyesyesyes
`mb_detect_order`yesyesyesyes
`mb_encode_mimeheader`yesyesyesyes
`mb_encode_numericentity`yesyesyesyes
`mb_encoding_aliases`yesyesyesyes
`mb_ereg`yesyesyesyes
`mb_ereg_match`yesyesyesyes
`mb_ereg_replace`yesyesyesyes
`mb_ereg_replace_callback`yesyesyesyes
`mb_ereg_search`yesyesyesyes
`mb_ereg_search_getpos`yesyesyesyes
`mb_ereg_search_getregs`yesyesyesyes
`mb_ereg_search_init`yesyesyesyes
`mb_ereg_search_pos`yesyesyesyes
`mb_ereg_search_regs`yesyesyesyes
`mb_ereg_search_setpos`yesyesyesyes
`mb_eregi`yesyesyesyes
`mb_eregi_replace`yesyesyesyes
`mb_get_info`yesyesyesyes
`mb_http_input`yesyesyesyes
`mb_http_output`yesyesyesyes
`mb_internal_encoding`yesyesyesyes
`mb_language`yesyesyesyes
`mb_lcfirst`yesnonono
`mb_list_encodings`yesyesyesyes
`mb_ltrim`yesnonono
`mb_ord`yesyesyesyes
`mb_output_handler`yesyesyesyes
`mb_parse_str`yesyesyesyes
`mb_preferred_mime_name`yesyesyesyes
`mb_regex_encoding`yesyesyesyes
`mb_regex_set_options`yesyesyesyes
`mb_rtrim`yesnonono
`mb_scrub`yesyesyesyes
`mb_send_mail`yesyesyesyes
`mb_split`yesyesyesyes
`mb_str_pad`yesnonono
`mb_str_split`yesyesyesyes
`mb_strcut`yesyesyesyes
`mb_strimwidth`yesyesyesyes
`mb_stripos`yesyesyesyes
`mb_stristr`yesyesyesyes
`mb_strlen`yesyesyesyes
`mb_strpos`yesyesyesyes
`mb_strrchr`yesyesyesyes
`mb_strrichr`yesyesyesyes
`mb_strripos`yesyesyesyes
`mb_strrpos`yesyesyesyes
`mb_strstr`yesyesyesyes
`mb_strtolower`yesyesyesyes
`mb_strtoupper`yesyesyesyes
`mb_strwidth`yesyesyesyes
`mb_substitute_character`yesyesyesyes
`mb_substr`yesyesyesyes
`mb_substr_count`yesyesyesyes
`mb_trim`yesnonono
`mb_ucfirst`yesnonono
`mb_ucwords`yesnonono
`md5`yesyesyesyes
`md5_file`yesyesyesyes
`memory_get_peak_usage`yesyesyesyes
`memory_get_usage`yesyesyesyes
`memory_reset_peak_usage`yesyesyesyes
`metaphone`yesyesyesyes
`method_exists`yesyesyesyes
`microtime`yesyesyesyes
`mime_content_type`yesyesyesyes
`min`yesyesyesyes
`mkdir`yesyesyesyes
`mktime`yesyesyesyes
`money_format`yesnonono
`move_uploaded_file`yesyesyesyes
`msg_get_queue`yesyesyesyes
`msg_queue_exists`yesyesyesyes
`msg_receive`yesyesyesyes
`msg_remove_queue`yesyesyesyes
`msg_send`yesyesyesyes
`msg_set_queue`yesyesyesyes
`msg_stat_queue`yesyesyesyes
`mt_getrandmax`yesyesyesyes
`mt_rand`yesyesyesyes
`mt_srand`yesyesyesyes
`natcasesort`yesyesyesyes
`natsort`yesyesyesyes
`net_get_interfaces`yesyesyesyes
`next`yesyesyesyes
`nextafter`yesnonono
`nl2br`yesyesyesyes
`nl_langinfo`yesyesyesyes
`number_format`yesyesyesyes
`ob_clean`yesyesyesyes
`ob_end_clean`yesyesyesyes
`ob_end_flush`yesyesyesyes
`ob_flush`yesyesyesyes
`ob_get_clean`yesyesyesyes
`ob_get_contents`yesyesyesyes
`ob_get_flush`yesyesyesyes
`ob_get_length`yesyesyesyes
`ob_get_level`yesyesyesyes
`ob_get_status`yesyesyesyes
`ob_gzhandler`yesyesyesyes
`ob_implicit_flush`yesyesyesyes
`ob_list_handlers`yesyesyesyes
`ob_start`yesyesyesyes
`octdec`yesyesyesyes
`opcache_compile_file`yesyesnono
`opcache_get_configuration`yesyesnono
`opcache_get_status`yesyesnono
`opcache_invalidate`yesyesnono
`opcache_is_script_cached`yesyesnono
`opcache_reset`yesyesnono
`opendir`yesyesyesyes
`openlog`yesyesyesyes
`openssl_cipher_iv_length`yesyesyesyes
`openssl_cipher_key_length`yesyesyesyes
`openssl_cms_decrypt`yesyesyesyes
`openssl_cms_encrypt`yesyesyesyes
`openssl_cms_read`yesyesyesyes
`openssl_cms_sign`yesyesyesyes
`openssl_cms_verify`yesyesyesyes
`openssl_csr_export`yesyesyesyes
`openssl_csr_export_to_file`yesyesyesyes
`openssl_csr_get_public_key`yesyesnono
`openssl_csr_get_subject`yesyesyesyes
`openssl_csr_new`yesyesnono
`openssl_csr_sign`yesyesnono
`openssl_decrypt`yesyesyesyes
`openssl_dh_compute_key`yesyesyesyes
`openssl_digest`yesyesyesyes
`openssl_encrypt`yesyesyesyes
`openssl_error_string`yesyesyesyes
`openssl_free_key`yesyesyesyes
`openssl_get_cert_locations`yesyesyesyes
`openssl_get_cipher_methods`yesyesyesyes
`openssl_get_curve_names`yesyesyesyes
`openssl_get_md_methods`yesyesyesyes
`openssl_get_privatekey`yesyesyesyes
`openssl_get_publickey`yesyesyesyes
`openssl_open`yesyesyesyes
`openssl_pbkdf2`yesyesyesyes
`openssl_pkcs12_export`yesyesyesyes
`openssl_pkcs12_export_to_file`yesyesyesyes
`openssl_pkcs12_read`yesyesyesyes
`openssl_pkcs7_decrypt`yesyesyesyes
`openssl_pkcs7_encrypt`yesyesyesyes
`openssl_pkcs7_read`yesyesyesyes
`openssl_pkcs7_sign`yesyesyesyes
`openssl_pkcs7_verify`yesyesyesyes
`openssl_pkey_derive`yesyesyesyes
`openssl_pkey_export`yesyesyesyes
`openssl_pkey_export_to_file`yesyesyesyes
`openssl_pkey_free`yesyesyesyes
`openssl_pkey_get_details`yesyesyesyes
`openssl_pkey_get_private`yesyesyesyes
`openssl_pkey_get_public`yesyesyesyes
`openssl_pkey_new`yesyesyesyes
`openssl_private_decrypt`yesyesyesyes
`openssl_private_encrypt`yesyesyesyes
`openssl_public_decrypt`yesyesyesyes
`openssl_public_encrypt`yesyesyesyes
`openssl_random_pseudo_bytes`yesyesyesyes
`openssl_seal`yesyesyesyes
`openssl_sign`yesyesyesyes
`openssl_spki_export`yesyesyesyes
`openssl_spki_export_challenge`yesyesyesyes
`openssl_spki_new`yesyesyesyes
`openssl_spki_verify`yesyesyesyes
`openssl_verify`yesyesyesyes
`openssl_x509_check_private_key`yesyesyesyes
`openssl_x509_checkpurpose`yesyesyesyes
`openssl_x509_export`yesyesyesyes
`openssl_x509_export_to_file`yesyesyesyes
`openssl_x509_fingerprint`yesyesyesyes
`openssl_x509_free`yesyesyesyes
`openssl_x509_parse`yesyesyesyes
`openssl_x509_read`yesyesnono
`openssl_x509_verify`yesyesyesyes
`ord`yesyesyesyes
`output_add_rewrite_var`yesyesyesyes
`output_reset_rewrite_vars`yesyesyesyes
`pack`yesyesyesyes
`parse_ini_file`yesyesyesyes
`parse_ini_string`yesyesyesyes
`parse_str`yesyesyesyes
`parse_url`yesyesyesyes
`passthru`yesyesyesyes
`password_algos`yesyesyesyes
`password_get_info`yesyesyesyes
`password_hash`yesyesyesyes
`password_needs_rehash`yesyesyesyes
`password_verify`yesyesyesyes
`pathinfo`yesyesyesyes
`pclose`yesyesyesyes
`pfsockopen`yesyesyesyes
`php_ini_loaded_file`yesyesyesyes
`php_ini_scanned_files`yesyesyesyes
`php_sapi_name`yesyesyesyes
`php_strip_whitespace`yesyesyesyes
`php_uname`yesyesyesyes
`phpc_access_kernel`yesyesyesyes
`phpc_argon2_hash`yesyesyesyes
`phpc_argon2_verify`yesyesyesyes
`phpc_clone_with_begin`yesyesyesyes
`phpc_clone_with_end`yesyesyesyes
`phpc_clone_with_reinit`yesyesyesyes
`phpc_deploy_path`yesyesyesyes
`phpc_destruct_try_invoke_native`yesyesyesyes
`phpc_gc_native_child_at`yesyesyesyes
`phpc_gc_native_free_object`yesyesyesyes
`phpc_gc_native_object_refcount`yesyesyesyes
`phpc_gc_notify_object_freed_native`yesyesyesyes
`phpc_libcrypt_verify`yesyesyesyes
`phpc_match_unhandled_format_scalar`yesyesyesyes
`phpc_match_unhandled_operand_is_object`yesyesyesyes
`phpc_match_unhandled_operand_message`yesyesyesyes
`phpc_mm_free_native`yesyesyesyes
`phpc_native_ht_alloc`yesyesyesyes
`phpc_native_ht_set_bool_at`yesyesyesyes
`phpc_native_ht_set_double_at`yesyesyesyes
`phpc_native_ht_set_hashtable_at`yesyesyesyes
`phpc_native_ht_set_long_at`yesyesyesyes
`phpc_native_ht_set_null_at`yesyesyesyes
`phpc_native_ht_set_string_at`yesyesyesyes
`phpc_native_ht_set_string_key`yesyesyesyes
`phpc_native_ht_set_string_key_bool`yesyesyesyes
`phpc_native_ht_set_string_key_double`yesyesyesyes
`phpc_native_ht_set_string_key_ht`yesyesyesyes
`phpc_native_ht_set_string_key_long`yesyesyesyes
`phpc_native_ht_set_string_key_null`yesyesyesyes
`phpc_ob_write_stdout_kernel`yesyesyesyes
`phpc_object_invoke_destructor_native`yesyesyesyes
`phpc_object_is_constructed_native`yesyesyesyes
`phpc_object_release_storage_native`yesyesyesyes
`phpc_openssl_cipher_decrypt`yesyesyesyes
`phpc_openssl_cipher_encrypt`yesyesyesyes
`phpc_rewrite_vars_set_tags_kernel`yesyesyesyes
`phpc_run_command`yesyesyesyes
`phpc_stat_mode_kernel`yesyesyesyes
`phpc_url_rewriter_apply_kernel`yesyesyesyes
`phpc_weakref_null_slot`yesyesyesyes
`phpc_weakref_unset_map_key`yesyesyesyes
`phpcredits`yesyesyesyes
`phpinfo`yesyesyesyes
`phpversion`yesyesyesyes
`pi`yesyesyesyes
`popen`yesyesyesyes
`pos`yesyesyesyes
`pow`yesyesyesyes
`preg_filter`yesyesyesyes
`preg_grep`yesyesyesyes
`preg_last_error`yesyesyesyes
`preg_last_error_msg`yesyesyesyes
`preg_match`yesyesyesyes
`preg_match_all`yesyesyesyes
`preg_quote`yesyesyesyes
`preg_replace`yesyesyesyes
`preg_replace_callback`yesyesyesyes
`preg_replace_callback_array`yesyesyesyes
`preg_split`yesyesyesyes
`prev`yesyesyesyes
`print_r`yesyesyesyes
`printf`yesyesyesyes
`proc_close`yesyesyesyes
`proc_get_status`yesyesyesyes
`proc_nice`yesyesyesyes
`proc_open`yesyesyesyes
`proc_terminate`yesyesyesyes
`property_exists`yesyesyesyes
`putenv`yesyesyesyes
`quoted_printable_decode`yesyesyesyes
`quoted_printable_encode`yesyesyesyes
`quotemeta`yesyesyesyes
`rad2deg`yesyesyesyes
`rand`yesyesyesyes
`random_bytes`yesyesyesyes
`random_int`yesyesyesyes
`range`yesyesyesyes
`rawurldecode`yesyesyesyes
`rawurlencode`yesyesyesyes
`readdir`yesyesyesyes
`readfile`yesyesyesyes
`readgzfile`yesyesyesyes
`readline`yesyesyesyes
`readline_add_history`yesyesyesyes
`readline_callback_handler_install`yesyesyesyes
`readline_callback_handler_remove`yesyesyesyes
`readline_callback_read_char`yesyesyesyes
`readline_clear_history`yesyesyesyes
`readline_completion_function`yesyesyesyes
`readline_info`yesyesyesyes
`readline_list_history`yesyesyesyes
`readline_on_new_line`yesyesyesyes
`readline_read_history`yesyesyesyes
`readline_redisplay`yesyesyesyes
`readline_write_history`yesyesyesyes
`readlink`yesyesyesyes
`readonly`yesnonono
`realpath`yesyesyesyes
`realpath_cache_get`yesyesyesyes
`realpath_cache_size`yesyesyesyes
`register_shutdown_function`yesyesyesyes
`register_tick_function`yesyesyesyes
`rename`yesyesyesyes
`reset`yesyesyesyes
`restore_error_handler`yesyesyesyes
`restore_exception_handler`yesyesyesyes
`rewind`yesyesyesyes
`rewinddir`yesyesyesyes
`rmdir`yesyesyesyes
`round`yesyesyesyes
`rsort`yesyesyesyes
`rtrim`yesyesyesyes
`scandir`yesyesyesyes
`sem_acquire`yesyesyesyes
`sem_get`yesyesyesyes
`sem_release`yesyesyesyes
`sem_remove`yesyesyesyes
`serialize`yesyesyesyes
`session_abort`yesyesyesyes
`session_cache_expire`yesyesyesyes
`session_cache_limiter`yesyesyesyes
`session_commit`yesyesyesyes
`session_create_id`yesyesyesyes
`session_decode`yesyesyesyes
`session_destroy`yesyesyesyes
`session_encode`yesyesyesyes
`session_gc`yesyesyesyes
`session_get_cookie_params`yesyesyesyes
`session_id`yesyesyesyes
`session_module_name`yesyesyesyes
`session_name`yesyesyesyes
`session_regenerate_id`yesyesyesyes
`session_register_shutdown`yesyesyesyes
`session_reset`yesyesyesyes
`session_save_path`yesyesyesyes
`session_set_cookie_params`yesyesyesyes
`session_set_save_handler`yesyesyesyes
`session_start`yesyesyesyes
`session_status`yesyesyesyes
`session_unset`yesyesyesyes
`session_write_close`yesyesyesyes
`set_error_handler`yesyesyesyes
`set_exception_handler`yesyesyesyes
`set_file_buffer`yesyesyesyes
`set_include_path`yesyesyesyes
`set_time_limit`yesyesyesyes
`setcookie`yesyesyesyes
`setlocale`yesyesyesyes
`setrawcookie`yesyesyesyes
`settype`yesyesyesyes
`sha1`yesyesyesyes
`sha1_file`yesyesyesyes
`shell_exec`yesyesyesyes
`shm_attach`yesyesyesyes
`shm_detach`yesyesyesyes
`shm_get_var`yesyesyesyes
`shm_has_var`yesyesyesyes
`shm_put_var`yesyesyesyes
`shm_remove`yesyesyesyes
`shm_remove_var`yesyesyesyes
`shmop_close`yesyesyesyes
`shmop_delete`yesyesyesyes
`shmop_open`yesyesyesyes
`shmop_read`yesyesyesyes
`shmop_size`yesyesyesyes
`shmop_write`yesyesyesyes
`show_source`yesyesyesyes
`shuffle`yesyesyesyes
`similar_text`yesyesyesyes
`sin`yesyesyesyes
`sinh`yesyesyesyes
`sizeof`yesyesyesyes
`sleep`yesyesyesyes
`socket_accept`yesyesyesyes
`socket_addrinfo_bind`yesyesyesyes
`socket_addrinfo_connect`yesyesyesyes
`socket_addrinfo_explain`yesyesyesyes
`socket_addrinfo_lookup`yesyesyesyes
`socket_atmark`yesnonono
`socket_bind`yesyesyesyes
`socket_clear_error`yesyesyesyes
`socket_close`yesyesyesyes
`socket_cmsg_space`yesyesyesyes
`socket_connect`yesyesyesyes
`socket_create`yesyesyesyes
`socket_create_listen`yesyesyesyes
`socket_create_pair`yesyesyesyes
`socket_export_stream`yesyesyesyes
`socket_get_option`yesyesyesyes
`socket_get_status`yesyesyesyes
`socket_getopt`yesyesyesyes
`socket_getpeername`yesyesyesyes
`socket_getsockname`yesyesyesyes
`socket_import_stream`yesyesyesyes
`socket_last_error`yesyesyesyes
`socket_listen`yesyesyesyes
`socket_read`yesyesyesyes
`socket_recv`yesyesyesyes
`socket_recvfrom`yesyesyesyes
`socket_recvmsg`yesyesyesyes
`socket_select`yesyesyesyes
`socket_send`yesyesyesyes
`socket_sendmsg`yesyesyesyes
`socket_sendto`yesyesyesyes
`socket_set_block`yesyesyesyes
`socket_set_blocking`yesyesyesyes
`socket_set_nonblock`yesyesyesyes
`socket_set_option`yesyesyesyes
`socket_set_timeout`yesyesyesyes
`socket_setopt`yesyesyesyes
`socket_shutdown`yesyesyesyes
`socket_strerror`yesyesyesyes
`socket_write`yesyesyesyes
`sodium_add`yesyesyesyes
`sodium_base642bin`yesyesyesyes
`sodium_bin2base64`yesyesyesyes
`sodium_bin2hex`yesyesyesyes
`sodium_compare`yesyesyesyes
`sodium_crypto_aead_aes256gcm_decrypt`yesyesyesyes
`sodium_crypto_aead_aes256gcm_encrypt`yesyesyesyes
`sodium_crypto_aead_aes256gcm_is_available`yesyesyesyes
`sodium_crypto_aead_aes256gcm_keygen`yesyesyesyes
`sodium_crypto_aead_chacha20poly1305_decrypt`yesyesyesyes
`sodium_crypto_aead_chacha20poly1305_encrypt`yesyesyesyes
`sodium_crypto_aead_chacha20poly1305_ietf_decrypt`yesyesyesyes
`sodium_crypto_aead_chacha20poly1305_ietf_encrypt`yesyesyesyes
`sodium_crypto_aead_chacha20poly1305_ietf_keygen`yesyesyesyes
`sodium_crypto_aead_chacha20poly1305_keygen`yesyesyesyes
`sodium_crypto_aead_xchacha20poly1305_ietf_decrypt`yesyesyesyes
`sodium_crypto_aead_xchacha20poly1305_ietf_encrypt`yesyesyesyes
`sodium_crypto_aead_xchacha20poly1305_ietf_keygen`yesyesyesyes
`sodium_crypto_auth`yesyesyesyes
`sodium_crypto_auth_keygen`yesyesyesyes
`sodium_crypto_auth_verify`yesyesyesyes
`sodium_crypto_box`yesyesyesyes
`sodium_crypto_box_keypair`yesyesyesyes
`sodium_crypto_box_keypair_from_secretkey_and_publickey`yesyesyesyes
`sodium_crypto_box_open`yesyesyesyes
`sodium_crypto_box_publickey`yesyesyesyes
`sodium_crypto_box_publickey_from_secretkey`yesyesyesyes
`sodium_crypto_box_seal`yesyesyesyes
`sodium_crypto_box_seal_open`yesyesyesyes
`sodium_crypto_box_secretkey`yesyesyesyes
`sodium_crypto_box_seed_keypair`yesyesyesyes
`sodium_crypto_core_ristretto255_add`yesyesyesyes
`sodium_crypto_core_ristretto255_from_hash`yesyesyesyes
`sodium_crypto_core_ristretto255_is_valid_point`yesyesyesyes
`sodium_crypto_core_ristretto255_random`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_add`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_complement`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_invert`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_mul`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_negate`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_random`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_reduce`yesyesyesyes
`sodium_crypto_core_ristretto255_scalar_sub`yesyesyesyes
`sodium_crypto_core_ristretto255_sub`yesyesyesyes
`sodium_crypto_generichash`yesyesyesyes
`sodium_crypto_generichash_final`yesyesyesyes
`sodium_crypto_generichash_init`yesyesyesyes
`sodium_crypto_generichash_keygen`yesyesyesyes
`sodium_crypto_generichash_update`yesyesyesyes
`sodium_crypto_kdf_derive_from_key`yesyesyesyes
`sodium_crypto_kdf_keygen`yesyesyesyes
`sodium_crypto_kx_client_session_keys`yesyesyesyes
`sodium_crypto_kx_keypair`yesyesyesyes
`sodium_crypto_kx_publickey`yesyesyesyes
`sodium_crypto_kx_secretkey`yesyesyesyes
`sodium_crypto_kx_seed_keypair`yesyesyesyes
`sodium_crypto_kx_server_session_keys`yesyesyesyes
`sodium_crypto_pwhash`yesyesyesyes
`sodium_crypto_pwhash_scryptsalsa208sha256`yesyesyesyes
`sodium_crypto_pwhash_scryptsalsa208sha256_str`yesyesyesyes
`sodium_crypto_pwhash_scryptsalsa208sha256_str_verify`yesyesyesyes
`sodium_crypto_pwhash_str`yesyesyesyes
`sodium_crypto_pwhash_str_needs_rehash`yesyesyesyes
`sodium_crypto_pwhash_str_verify`yesyesyesyes
`sodium_crypto_scalarmult`yesyesyesyes
`sodium_crypto_scalarmult_base`yesyesyesyes
`sodium_crypto_scalarmult_ristretto255`yesyesyesyes
`sodium_crypto_scalarmult_ristretto255_base`yesyesyesyes
`sodium_crypto_secretbox`yesyesyesyes
`sodium_crypto_secretbox_keygen`yesyesyesyes
`sodium_crypto_secretbox_open`yesyesyesyes
`sodium_crypto_secretstream_xchacha20poly1305_init_pull`yesyesyesyes
`sodium_crypto_secretstream_xchacha20poly1305_init_push`yesyesyesyes
`sodium_crypto_secretstream_xchacha20poly1305_keygen`yesyesyesyes
`sodium_crypto_secretstream_xchacha20poly1305_pull`yesyesyesyes
`sodium_crypto_secretstream_xchacha20poly1305_push`yesyesyesyes
`sodium_crypto_secretstream_xchacha20poly1305_rekey`yesyesyesyes
`sodium_crypto_shorthash`yesyesyesyes
`sodium_crypto_shorthash_keygen`yesyesyesyes
`sodium_crypto_sign`yesyesyesyes
`sodium_crypto_sign_detached`yesyesyesyes
`sodium_crypto_sign_ed25519_pk_to_curve25519`yesyesyesyes
`sodium_crypto_sign_ed25519_sk_to_curve25519`yesyesyesyes
`sodium_crypto_sign_keypair`yesyesyesyes
`sodium_crypto_sign_keypair_from_secretkey_and_publickey`yesyesyesyes
`sodium_crypto_sign_open`yesyesyesyes
`sodium_crypto_sign_publickey`yesyesyesyes
`sodium_crypto_sign_publickey_from_secretkey`yesyesyesyes
`sodium_crypto_sign_secretkey`yesyesyesyes
`sodium_crypto_sign_seed_keypair`yesyesyesyes
`sodium_crypto_sign_verify_detached`yesyesyesyes
`sodium_crypto_stream`yesyesyesyes
`sodium_crypto_stream_keygen`yesyesyesyes
`sodium_crypto_stream_xchacha20`yesyesyesyes
`sodium_crypto_stream_xchacha20_keygen`yesyesyesyes
`sodium_crypto_stream_xchacha20_xor`yesyesyesyes
`sodium_crypto_stream_xchacha20_xor_ic`yesyesyesyes
`sodium_crypto_stream_xor`yesyesyesyes
`sodium_hex2bin`yesyesyesyes
`sodium_increment`yesyesyesyes
`sodium_memcmp`yesyesyesyes
`sodium_memzero`yesyesyesyes
`sodium_pad`yesyesyesyes
`sodium_unpad`yesyesyesyes
`sort`yesyesyesyes
`soundex`yesyesyesyes
`spl_autoload`yesyesyesyes
`spl_autoload_call`yesyesyesyes
`spl_autoload_extensions`yesyesyesyes
`spl_autoload_functions`yesyesyesyes
`spl_autoload_register`yesyesyesyes
`spl_autoload_unregister`yesyesyesyes
`spl_object_hash`yesyesyesyes
`spl_object_id`yesyesyesyes
`sprintf`yesyesyesyes
`sqrt`yesyesyesyes
`srand`yesyesyesyes
`sscanf`yesyesyesyes
`stat`yesyesyesyes
`str_contains`yesyesyesyes
`str_ends_with`yesyesyesyes
`str_getcsv`yesyesyesyes
`str_ireplace`yesyesyesyes
`str_pad`yesyesyesyes
`str_repeat`yesyesyesyes
`str_replace`yesyesyesyes
`str_rot13`yesyesyesyes
`str_shuffle`yesyesyesyes
`str_split`yesyesyesyes
`str_starts_with`yesyesyesyes
`str_word_count`yesyesyesyes
`strcasecmp`yesyesyesyes
`strchr`yesyesyesyes
`strcmp`yesyesyesyes
`strcoll`yesyesyesyes
`strcspn`yesyesyesyes
`stream_bucket_append`yesyesyesyes
`stream_bucket_make_writeable`yesyesyesyes
`stream_bucket_new`yesyesyesyes
`stream_bucket_prepend`yesyesyesyes
`stream_clear_errors`yesnonono
`stream_context_create`yesyesyesyes
`stream_context_get_default`yesyesyesyes
`stream_context_get_options`yesyesyesyes
`stream_context_get_params`yesyesyesyes
`stream_context_set_default`yesyesyesyes
`stream_context_set_option`yesyesyesyes
`stream_context_set_params`yesyesyesyes
`stream_copy_to_stream`yesyesyesyes
`stream_filter_append`yesyesyesyes
`stream_filter_prepend`yesyesyesyes
`stream_filter_register`yesyesyesyes
`stream_filter_remove`yesyesyesyes
`stream_get_contents`yesyesyesyes
`stream_get_filters`yesyesyesyes
`stream_get_line`yesyesyesyes
`stream_get_meta_data`yesyesyesyes
`stream_get_transports`yesyesyesyes
`stream_get_wrappers`yesyesyesyes
`stream_is_local`yesyesyesyes
`stream_isatty`yesyesyesyes
`stream_last_errors`yesnonono
`stream_register_wrapper`yesyesyesyes
`stream_resolve_include_path`yesyesyesyes
`stream_select`yesyesyesyes
`stream_set_blocking`yesyesyesyes
`stream_set_chunk_size`yesyesyesyes
`stream_set_read_buffer`yesyesyesyes
`stream_set_timeout`yesyesyesyes
`stream_set_write_buffer`yesyesyesyes
`stream_socket_accept`yesyesyesyes
`stream_socket_client`yesyesyesyes
`stream_socket_enable_crypto`yesyesyesyes
`stream_socket_get_crypto_status`yesnonono
`stream_socket_get_name`yesyesyesyes
`stream_socket_pair`yesyesyesyes
`stream_socket_recvfrom`yesyesyesyes
`stream_socket_sendto`yesyesyesyes
`stream_socket_server`yesyesyesyes
`stream_socket_shutdown`yesyesyesyes
`stream_supports`yesnonono
`stream_supports_lock`yesyesyesyes
`stream_wrapper_register`yesyesyesyes
`stream_wrapper_restore`yesyesyesyes
`stream_wrapper_unregister`yesyesyesyes
`strftime`yesyesyesyes
`strip_tags`yesyesyesyes
`stripcslashes`yesyesyesyes
`stripos`yesyesyesyes
`stripslashes`yesyesyesyes
`stristr`yesyesyesyes
`strlen`yesyesyesyes
`strnatcasecmp`yesyesyesyes
`strnatcmp`yesyesyesyes
`strncasecmp`yesyesyesyes
`strncmp`yesyesyesyes
`strpbrk`yesyesyesyes
`strpos`yesyesyesyes
`strptime`yesyesyesyes
`strrchr`yesyesyesyes
`strrev`yesyesyesyes
`strripos`yesyesyesyes
`strrpos`yesyesyesyes
`strspn`yesyesyesyes
`strstr`yesyesyesyes
`strtok`yesyesyesyes
`strtolower`yesyesyesyes
`strtotime`yesyesyesyes
`strtoupper`yesyesyesyes
`strtr`yesyesyesyes
`strval`yesyesyesyes
`strxfrm`yesnonono
`substr`yesyesyesyes
`substr_compare`yesyesyesyes
`substr_count`yesyesyesyes
`substr_replace`yesyesyesyes
`symlink`yesyesyesyes
`sys_get_temp_dir`yesyesyesyes
`sys_getloadavg`yesyesyesyes
`syslog`yesyesyesyes
`system`yesyesyesyes
`tan`yesyesyesyes
`tanh`yesyesyesyes
`tempnam`yesyesyesyes
`time`yesyesyesyes
`time_nanosleep`yesyesyesyes
`time_sleep_until`yesyesyesyes
`timezone_abbreviations_list`yesyesyesyes
`timezone_identifiers_list`yesyesyesyes
`timezone_location_get`yesyesyesyes
`timezone_name_from_abbr`yesyesyesyes
`timezone_name_get`yesyesyesyes
`timezone_offset_get`yesyesyesyes
`timezone_open`yesyesyesyes
`timezone_transitions_get`yesyesyesyes
`timezone_version_get`yesyesyesyes
`tmpfile`yesyesyesyes
`token_get_all`yesyesyesyes
`token_name`yesyesyesyes
`touch`yesyesyesyes
`trait_exists`yesyesyesyes
`trigger_error`yesyesyesyes
`trim`yesyesyesyes
`uasort`yesyesyesyes
`ucfirst`yesyesyesyes
`ucwords`yesyesyesyes
`uksort`yesyesyesyes
`umask`yesyesyesyes
`uniqid`yesyesyesyes
`unitenum_exists`yesnonono
`unlink`yesyesyesyes
`unpack`yesyesyesyes
`unregister_tick_function`yesyesyesyes
`unserialize`yesyesyesyes
`urldecode`yesyesyesyes
`urlencode`yesyesyesyes
`user_error`yesyesyesyes
`usleep`yesyesyesyes
`usort`yesyesyesyes
`utf8_decode`yesyesyesyes
`utf8_encode`yesyesyesyes
`var_dump`yesyesyesyes
`var_export`yesyesyesyes
`version_compare`yesyesyesyes
`vfprintf`yesyesyesyes
`vfscanf`yesnonono
`vprintf`yesyesyesyes
`vsprintf`yesyesyesyes
`web_bool`yesyesyesyes
`web_int`yesyesyesyes
`web_string`yesyesyesyes
`wordwrap`yesyesyesyes
`zend_thread_id`yesnonono
`zend_version`yesyesyesyes
`zlib_decode`yesyesyesyes
`zlib_encode`yesyesyesyes
`zlib_get_coding_type`yesyesyesyes

Self-host gaps · Development status · Regenerate: php script/generate-pages-capability-comparison.php