[phpstorm-stubs] update stubs to migration version for php 7.3

This commit is contained in:
Ivan Fedorov 2022-11-06 15:08:24 +01:00 committed by Ivan Fedorov
parent 17eb86a454
commit dc330fd7cb
27 changed files with 1395 additions and 37 deletions

View File

@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
fail-fast: false
name: Run tests against php 7.2
name: Run tests against php 7.3
steps:
- name: Checkout
uses: actions/checkout@v2
@ -15,22 +15,22 @@ jobs:
- name: Build Docker Container
run: docker-compose -f docker-compose.yml build >/dev/null
env:
PHP_VERSION: '7.2'
PHP_VERSION: '7.3'
- name: Composer Install
run: docker-compose -f docker-compose.yml run -e PHP_VERSION=7.2 test_runner composer update
run: docker-compose -f docker-compose.yml run -e PHP_VERSION=7.3 test_runner composer update
env:
PHP_VERSION: '7.2'
PHP_VERSION: '7.3'
- name: Dump Reflection To File
run: docker-compose -f docker-compose.yml run -e PHP_VERSION=7.2 php_under_test /usr/local/bin/php tests/Tools/dump-reflection-to-file.php ReflectionData.json
run: docker-compose -f docker-compose.yml run -e PHP_VERSION=7.3 php_under_test /usr/local/bin/php tests/Tools/dump-reflection-to-file.php ReflectionData.json
env:
PHP_VERSION: '7.2'
PHP_VERSION: '7.3'
- name: Run Tests
run: docker-compose -f docker-compose.yml run -e PHP_VERSION=7.2 test_runner vendor/bin/phpunit --testsuite PHP_7.2
run: docker-compose -f docker-compose.yml run -e PHP_VERSION=7.3 test_runner vendor/bin/phpunit --testsuite PHP_7.3
env:
PHP_VERSION: '7.2'
PHP_VERSION: '7.3'
additional:
runs-on: ubuntu-latest
name: Run cs-fixer and stubs structure tests

View File

@ -1,5 +1,6 @@
<?php
use JetBrains\PhpStorm\ArrayShape;
use JetBrains\PhpStorm\Deprecated;
use JetBrains\PhpStorm\Pure;
@ -999,6 +1000,22 @@ function gc_enable(): void {}
*/
function gc_disable(): void {}
/**
* Gets information about the garbage collector
* @link https://php.net/manual/en/function.gc-status.php
* @return int[] associative array with the following elements:
* <ul>
* <li>"runs"</li>
* <li>"collected"</li>
* <li>"threshold"</li>
* <li>"roots"</li>
* </ul>
* @since 7.3
*/
#[ArrayShape(["runs" => "int", "collected" => "int", "threshold" => "int", "roots" => "int"])]
#[Pure(true)]
function gc_status(): array {}
/**
* Reclaims memory used by the Zend Engine memory manager
* @link https://php.net/manual/en/function.gc-mem-caches.php

View File

@ -516,7 +516,7 @@ class TypeError extends Error {}
* @link https://php.net/manual/en/class.parseerror.php
* @since 7.0
*/
class ParseError extends Error {}
class ParseError extends CompileError {}
/**
* ArgumentCountError is thrown when too few arguments are passed to a user
@ -536,6 +536,13 @@ class ArgumentCountError extends TypeError {}
*/
class ArithmeticError extends Error {}
/**
* Class CompileError
* @link https://secure.php.net/manual/en/class.compileerror.php
* @since 7.3
*/
class CompileError extends Error {}
/**
* DivisionByZeroError is thrown when an attempt is made to divide a number by zero.
* @link https://php.net/manual/en/class.divisionbyzeroerror.php

View File

@ -97,6 +97,26 @@ class PDO
*/
public const SQLITE_DETERMINISTIC = 2048;
/**
* @since 7.3
*/
public const SQLITE_OPEN_READONLY = 1;
/**
* @since 7.3
*/
public const SQLITE_OPEN_READWRITE = 2;
/**
* @since 7.3
*/
public const SQLITE_OPEN_CREATE = 4;
/**
* @since 7.3
*/
public const SQLITE_ATTR_OPEN_FLAGS = 1000;
/**
* Specifies that the parameter is an INOUT parameter for a stored
* procedure. You must bitwise-OR this value with an explicit
@ -833,6 +853,34 @@ class PDO
public const SQLSRV_CURSOR_STATIC = 3;
public const SQLSRV_CURSOR_BUFFERED = 42;
/**
* Provides a way to specify the action on the database session.
* @since 7.2.16
* @since 7.3.3
*/
public const OCI_ATTR_ACTION = 1000;
/**
* Provides a way to specify the client info on the database session.
* @since 7.2.16
* @since 7.3.3
*/
public const OCI_ATTR_CLIENT_INFO = 1001;
/**
* Provides a way to specify the client identifier on the database session.
* @since 7.2.16
* @since 7.3.3
*/
public const OCI_ATTR_CLIENT_IDENTIFIER = 1002;
/**
* Provides a way to specify the module on the database session.
* @since 7.2.16
* @since 7.3.3
*/
public const OCI_ATTR_MODULE = 1003;
/**
* Sets the date format.
*/

View File

@ -27,6 +27,7 @@ const CLASSES = array (
'ClosedGeneratorException' => 'standard/_types.php',
'Closure' => 'Core/Core_c.php',
'Collator' => 'intl/intl.php',
'CompileError' => 'Core/Core_c.php',
'Countable' => 'Core/Core_c.php',
'DOMAttr' => 'dom/dom_c.php',
'DOMCdataSection' => 'dom/dom_c.php',
@ -97,6 +98,7 @@ const CLASSES = array (
'Iterator' => 'Core/Core_c.php',
'IteratorAggregate' => 'Core/Core_c.php',
'IteratorIterator' => 'SPL/SPL.php',
'JsonException' => 'json/json.php',
'JsonIncrementalParser' => 'json/json.php',
'JsonSerializable' => 'json/json.php',
'LengthException' => 'SPL/SPL.php',
@ -265,6 +267,8 @@ const FUNCTIONS = array (
'array_intersect_uassoc' => 'standard/standard_9.php',
'array_intersect_ukey' => 'standard/standard_9.php',
'array_key_exists' => 'standard/standard_9.php',
'array_key_first' => 'standard/standard_9.php',
'array_key_last' => 'standard/standard_9.php',
'array_keys' => 'standard/standard_9.php',
'array_map' => 'standard/standard_9.php',
'array_merge' => 'standard/standard_8.php',
@ -663,6 +667,7 @@ const FUNCTIONS = array (
'forward_static_call' => 'standard/standard_4.php',
'forward_static_call_array' => 'standard/standard_4.php',
'fpassthru' => 'standard/standard_5.php',
'fpm_get_status' => 'fpm/fpm.php',
'fprintf' => 'standard/standard_2.php',
'fputcsv' => 'standard/standard_6.php',
'fputs' => 'standard/standard_5.php',
@ -721,6 +726,7 @@ const FUNCTIONS = array (
'gc_enable' => 'Core/Core.php',
'gc_enabled' => 'Core/Core.php',
'gc_mem_caches' => 'Core/Core.php',
'gc_status' => 'Core/Core.php',
'gd_info' => 'gd/gd.php',
'get_browser' => 'standard/standard_7.php',
'get_called_class' => 'Core/Core.php',
@ -781,6 +787,7 @@ const FUNCTIONS = array (
'gmp_abs' => 'gmp/gmp.php',
'gmp_add' => 'gmp/gmp.php',
'gmp_and' => 'gmp/gmp.php',
'gmp_binomial' => 'gmp/gmp.php',
'gmp_clrbit' => 'gmp/gmp.php',
'gmp_cmp' => 'gmp/gmp.php',
'gmp_com' => 'gmp/gmp.php',
@ -799,12 +806,15 @@ const FUNCTIONS = array (
'gmp_intval' => 'gmp/gmp.php',
'gmp_invert' => 'gmp/gmp.php',
'gmp_jacobi' => 'gmp/gmp.php',
'gmp_kronecker' => 'gmp/gmp.php',
'gmp_lcm' => 'gmp/gmp.php',
'gmp_legendre' => 'gmp/gmp.php',
'gmp_mod' => 'gmp/gmp.php',
'gmp_mul' => 'gmp/gmp.php',
'gmp_neg' => 'gmp/gmp.php',
'gmp_nextprime' => 'gmp/gmp.php',
'gmp_or' => 'gmp/gmp.php',
'gmp_perfect_power' => 'gmp/gmp.php',
'gmp_perfect_square' => 'gmp/gmp.php',
'gmp_popcount' => 'gmp/gmp.php',
'gmp_pow' => 'gmp/gmp.php',
@ -883,6 +893,7 @@ const FUNCTIONS = array (
'hexdec' => 'standard/standard_3.php',
'highlight_file' => 'standard/standard_4.php',
'highlight_string' => 'standard/standard_4.php',
'hrtime' => 'standard/standard_4.php',
'html_entity_decode' => 'standard/standard_0.php',
'htmlentities' => 'standard/standard_0.php',
'htmlspecialchars' => 'standard/standard_0.php',
@ -1252,6 +1263,7 @@ const FUNCTIONS = array (
'is_array' => 'standard/standard_5.php',
'is_bool' => 'standard/standard_5.php',
'is_callable' => 'standard/standard_5.php',
'is_countable' => 'standard/standard_5.php',
'is_dir' => 'standard/standard_7.php',
'is_double' => 'standard/standard_5.php',
'is_executable' => 'standard/standard_7.php',
@ -1306,7 +1318,9 @@ const FUNCTIONS = array (
'lchown' => 'standard/standard_7.php',
'ldap_8859_to_t61' => 'ldap/ldap.php',
'ldap_add' => 'ldap/ldap.php',
'ldap_add_ext' => 'ldap/ldap.php',
'ldap_bind' => 'ldap/ldap.php',
'ldap_bind_ext' => 'ldap/ldap.php',
'ldap_close' => 'ldap/ldap.php',
'ldap_compare' => 'ldap/ldap.php',
'ldap_connect' => 'ldap/ldap.php',
@ -1314,6 +1328,7 @@ const FUNCTIONS = array (
'ldap_control_paged_result_response' => 'ldap/ldap.php',
'ldap_count_entries' => 'ldap/ldap.php',
'ldap_delete' => 'ldap/ldap.php',
'ldap_delete_ext' => 'ldap/ldap.php',
'ldap_dn2ufn' => 'ldap/ldap.php',
'ldap_err2str' => 'ldap/ldap.php',
'ldap_errno' => 'ldap/ldap.php',
@ -1321,6 +1336,7 @@ const FUNCTIONS = array (
'ldap_escape' => 'ldap/ldap.php',
'ldap_exop' => 'ldap/ldap.php',
'ldap_exop_passwd' => 'ldap/ldap.php',
'ldap_exop_refresh' => 'ldap/ldap.php',
'ldap_exop_whoami' => 'ldap/ldap.php',
'ldap_explode_dn' => 'ldap/ldap.php',
'ldap_first_attribute' => 'ldap/ldap.php',
@ -1335,8 +1351,11 @@ const FUNCTIONS = array (
'ldap_get_values_len' => 'ldap/ldap.php',
'ldap_list' => 'ldap/ldap.php',
'ldap_mod_add' => 'ldap/ldap.php',
'ldap_mod_add_ext' => 'ldap/ldap.php',
'ldap_mod_del' => 'ldap/ldap.php',
'ldap_mod_del_ext' => 'ldap/ldap.php',
'ldap_mod_replace' => 'ldap/ldap.php',
'ldap_mod_replace_ext' => 'ldap/ldap.php',
'ldap_modify' => 'ldap/ldap.php',
'ldap_modify_batch' => 'ldap/ldap.php',
'ldap_next_attribute' => 'ldap/ldap.php',
@ -1347,6 +1366,7 @@ const FUNCTIONS = array (
'ldap_parse_result' => 'ldap/ldap.php',
'ldap_read' => 'ldap/ldap.php',
'ldap_rename' => 'ldap/ldap.php',
'ldap_rename_ext' => 'ldap/ldap.php',
'ldap_sasl_bind' => 'ldap/ldap.php',
'ldap_search' => 'ldap/ldap.php',
'ldap_set_option' => 'ldap/ldap.php',
@ -1748,10 +1768,12 @@ const FUNCTIONS = array (
'mysqli_warning_count' => 'mysqli/mysqli.php',
'natcasesort' => 'standard/standard_8.php',
'natsort' => 'standard/standard_8.php',
'net_get_interfaces' => 'standard/standard_4.php',
'next' => 'standard/standard_8.php',
'ngettext' => 'gettext/gettext.php',
'nl2br' => 'standard/standard_1.php',
'nl_langinfo' => 'standard/standard_2.php',
'normalizer_get_raw_decomposition' => 'intl/intl.php',
'normalizer_is_normalized' => 'intl/intl.php',
'normalizer_normalize' => 'intl/intl.php',
'number_format' => 'standard/standard_3.php',
@ -1973,6 +1995,7 @@ const FUNCTIONS = array (
'openssl_pkcs7_read' => 'openssl/openssl.php',
'openssl_pkcs7_sign' => 'openssl/openssl.php',
'openssl_pkcs7_verify' => 'openssl/openssl.php',
'openssl_pkey_derive' => 'openssl/openssl.php',
'openssl_pkey_export' => 'openssl/openssl.php',
'openssl_pkey_export_to_file' => 'openssl/openssl.php',
'openssl_pkey_free' => 'openssl/openssl.php',
@ -2437,6 +2460,9 @@ const FUNCTIONS = array (
'socket_shutdown' => 'sockets/sockets.php',
'socket_strerror' => 'sockets/sockets.php',
'socket_write' => 'sockets/sockets.php',
'socket_wsaprotocol_info_export' => 'sockets/sockets.php',
'socket_wsaprotocol_info_import' => 'sockets/sockets.php',
'socket_wsaprotocol_info_release' => 'sockets/sockets.php',
'sodium_add' => 'sodium/sodium.php',
'sodium_base642bin' => 'sodium/sodium.php',
'sodium_bin2base64' => 'sodium/sodium.php',
@ -2949,8 +2975,10 @@ const CONSTANTS = array (
'CURLAUTH_ANY' => 'curl/curl_d.php',
'CURLAUTH_ANYSAFE' => 'curl/curl_d.php',
'CURLAUTH_BASIC' => 'curl/curl_d.php',
'CURLAUTH_BEARER' => 'curl/curl_d.php',
'CURLAUTH_DIGEST' => 'curl/curl_d.php',
'CURLAUTH_DIGEST_IE' => 'curl/curl_d.php',
'CURLAUTH_GSSAPI' => 'curl/curl_d.php',
'CURLAUTH_GSSNEGOTIATE' => 'curl/curl_d.php',
'CURLAUTH_NEGOTIATE' => 'curl/curl_d.php',
'CURLAUTH_NONE' => 'curl/curl_d.php',
@ -3033,6 +3061,7 @@ const CONSTANTS = array (
'CURLE_UNSUPPORTED_PROTOCOL' => 'curl/curl_d.php',
'CURLE_URL_MALFORMAT' => 'curl/curl_d.php',
'CURLE_URL_MALFORMAT_USER' => 'curl/curl_d.php',
'CURLE_WEIRD_SERVER_REPLY' => 'curl/curl_d.php',
'CURLE_WRITE_ERROR' => 'curl/curl_d.php',
'CURLFTPAUTH_DEFAULT' => 'curl/curl_d.php',
'CURLFTPAUTH_SSL' => 'curl/curl_d.php',
@ -3055,34 +3084,45 @@ const CONSTANTS = array (
'CURLHEADER_SEPARATE' => 'curl/curl_d.php',
'CURLHEADER_UNIFIED' => 'curl/curl_d.php',
'CURLINFO_APPCONNECT_TIME' => 'curl/curl_d.php',
'CURLINFO_APPCONNECT_TIME_T' => 'curl/curl_d.php',
'CURLINFO_CERTINFO' => 'curl/curl_d.php',
'CURLINFO_CONDITION_UNMET' => 'curl/curl_d.php',
'CURLINFO_CONNECT_TIME' => 'curl/curl_d.php',
'CURLINFO_CONNECT_TIME_T' => 'curl/curl_d.php',
'CURLINFO_CONTENT_LENGTH_DOWNLOAD' => 'curl/curl_d.php',
'CURLINFO_CONTENT_LENGTH_DOWNLOAD_T' => 'curl/curl_d.php',
'CURLINFO_CONTENT_LENGTH_UPLOAD' => 'curl/curl_d.php',
'CURLINFO_CONTENT_LENGTH_UPLOAD_T' => 'curl/curl_d.php',
'CURLINFO_CONTENT_TYPE' => 'curl/curl_d.php',
'CURLINFO_COOKIELIST' => 'curl/curl_d.php',
'CURLINFO_EFFECTIVE_URL' => 'curl/curl_d.php',
'CURLINFO_FILETIME' => 'curl/curl_d.php',
'CURLINFO_FILETIME_T' => 'curl/curl_d.php',
'CURLINFO_FTP_ENTRY_PATH' => 'curl/curl_d.php',
'CURLINFO_HEADER_OUT' => 'curl/curl_d.php',
'CURLINFO_HEADER_SIZE' => 'curl/curl_d.php',
'CURLINFO_HTTPAUTH_AVAIL' => 'curl/curl_d.php',
'CURLINFO_HTTP_CODE' => 'curl/curl_d.php',
'CURLINFO_HTTP_CONNECTCODE' => 'curl/curl_d.php',
'CURLINFO_HTTP_VERSION' => 'curl/curl_d.php',
'CURLINFO_LASTONE' => 'curl/curl_d.php',
'CURLINFO_LOCAL_IP' => 'curl/curl_d.php',
'CURLINFO_LOCAL_PORT' => 'curl/curl_d.php',
'CURLINFO_NAMELOOKUP_TIME' => 'curl/curl_d.php',
'CURLINFO_NAMELOOKUP_TIME_T' => 'curl/curl_d.php',
'CURLINFO_NUM_CONNECTS' => 'curl/curl_d.php',
'CURLINFO_OS_ERRNO' => 'curl/curl_d.php',
'CURLINFO_PRETRANSFER_TIME' => 'curl/curl_d.php',
'CURLINFO_PRETRANSFER_TIME_T' => 'curl/curl_d.php',
'CURLINFO_PRIMARY_IP' => 'curl/curl_d.php',
'CURLINFO_PRIMARY_PORT' => 'curl/curl_d.php',
'CURLINFO_PRIVATE' => 'curl/curl_d.php',
'CURLINFO_PROTOCOL' => 'curl/curl_d.php',
'CURLINFO_PROXYAUTH_AVAIL' => 'curl/curl_d.php',
'CURLINFO_PROXY_SSL_VERIFYRESULT' => 'curl/curl_d.php',
'CURLINFO_REDIRECT_COUNT' => 'curl/curl_d.php',
'CURLINFO_REDIRECT_TIME' => 'curl/curl_d.php',
'CURLINFO_REDIRECT_TIME_T' => 'curl/curl_d.php',
'CURLINFO_REDIRECT_URL' => 'curl/curl_d.php',
'CURLINFO_REQUEST_SIZE' => 'curl/curl_d.php',
'CURLINFO_RESPONSE_CODE' => 'curl/curl_d.php',
@ -3090,14 +3130,21 @@ const CONSTANTS = array (
'CURLINFO_RTSP_CSEQ_RECV' => 'curl/curl_d.php',
'CURLINFO_RTSP_SERVER_CSEQ' => 'curl/curl_d.php',
'CURLINFO_RTSP_SESSION_ID' => 'curl/curl_d.php',
'CURLINFO_SCHEME' => 'curl/curl_d.php',
'CURLINFO_SIZE_DOWNLOAD' => 'curl/curl_d.php',
'CURLINFO_SIZE_DOWNLOAD_T' => 'curl/curl_d.php',
'CURLINFO_SIZE_UPLOAD' => 'curl/curl_d.php',
'CURLINFO_SIZE_UPLOAD_T' => 'curl/curl_d.php',
'CURLINFO_SPEED_DOWNLOAD' => 'curl/curl_d.php',
'CURLINFO_SPEED_DOWNLOAD_T' => 'curl/curl_d.php',
'CURLINFO_SPEED_UPLOAD' => 'curl/curl_d.php',
'CURLINFO_SPEED_UPLOAD_T' => 'curl/curl_d.php',
'CURLINFO_SSL_ENGINES' => 'curl/curl_d.php',
'CURLINFO_SSL_VERIFYRESULT' => 'curl/curl_d.php',
'CURLINFO_STARTTRANSFER_TIME' => 'curl/curl_d.php',
'CURLINFO_STARTTRANSFER_TIME_T' => 'curl/curl_d.php',
'CURLINFO_TOTAL_TIME' => 'curl/curl_d.php',
'CURLINFO_TOTAL_TIME_T' => 'curl/curl_d.php',
'CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE' => 'curl/curl_d.php',
'CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE' => 'curl/curl_d.php',
'CURLMOPT_MAXCONNECTS' => 'curl/curl_d.php',
@ -3114,6 +3161,7 @@ const CONSTANTS = array (
'CURLM_INTERNAL_ERROR' => 'curl/curl_d.php',
'CURLM_OK' => 'curl/curl_d.php',
'CURLM_OUT_OF_MEMORY' => 'curl/curl_d.php',
'CURLOPT_ABSTRACT_UNIX_SOCKET' => 'curl/curl_d.php',
'CURLOPT_ACCEPTTIMEOUT_MS' => 'curl/curl_d.php',
'CURLOPT_ACCEPT_ENCODING' => 'curl/curl_d.php',
'CURLOPT_ADDRESS_SCOPE' => 'curl/curl_d.php',
@ -3139,11 +3187,13 @@ const CONSTANTS = array (
'CURLOPT_CUSTOMREQUEST' => 'curl/curl_d.php',
'CURLOPT_DEFAULT_PROTOCOL' => 'curl/curl_d.php',
'CURLOPT_DIRLISTONLY' => 'curl/curl_d.php',
'CURLOPT_DISALLOW_USERNAME_IN_URL' => 'curl/curl_d.php',
'CURLOPT_DNS_CACHE_TIMEOUT' => 'curl/curl_d.php',
'CURLOPT_DNS_INTERFACE' => 'curl/curl_d.php',
'CURLOPT_DNS_LOCAL_IP4' => 'curl/curl_d.php',
'CURLOPT_DNS_LOCAL_IP6' => 'curl/curl_d.php',
'CURLOPT_DNS_SERVERS' => 'curl/curl_d.php',
'CURLOPT_DNS_SHUFFLE_ADDRESSES' => 'curl/curl_d.php',
'CURLOPT_DNS_USE_GLOBAL_CACHE' => 'curl/curl_d.php',
'CURLOPT_EGDSOCKET' => 'curl/curl_d.php',
'CURLOPT_ENCODING' => 'curl/curl_d.php',
@ -3172,9 +3222,12 @@ const CONSTANTS = array (
'CURLOPT_FTP_USE_EPSV' => 'curl/curl_d.php',
'CURLOPT_FTP_USE_PRET' => 'curl/curl_d.php',
'CURLOPT_GSSAPI_DELEGATION' => 'curl/curl_d.php',
'CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS' => 'curl/curl_d.php',
'CURLOPT_HAPROXYPROTOCOL' => 'curl/curl_d.php',
'CURLOPT_HEADER' => 'curl/curl_d.php',
'CURLOPT_HEADERFUNCTION' => 'curl/curl_d.php',
'CURLOPT_HEADEROPT' => 'curl/curl_d.php',
'CURLOPT_HTTP09_ALLOWED' => 'curl/curl_d.php',
'CURLOPT_HTTP200ALIASES' => 'curl/curl_d.php',
'CURLOPT_HTTPAUTH' => 'curl/curl_d.php',
'CURLOPT_HTTPGET' => 'curl/curl_d.php',
@ -3189,6 +3242,7 @@ const CONSTANTS = array (
'CURLOPT_INTERFACE' => 'curl/curl_d.php',
'CURLOPT_IPRESOLVE' => 'curl/curl_d.php',
'CURLOPT_ISSUERCERT' => 'curl/curl_d.php',
'CURLOPT_KEEP_SENDING_ON_ERROR' => 'curl/curl_d.php',
'CURLOPT_KEYPASSWD' => 'curl/curl_d.php',
'CURLOPT_KRB4LEVEL' => 'curl/curl_d.php',
'CURLOPT_KRBLEVEL' => 'curl/curl_d.php',
@ -3225,6 +3279,7 @@ const CONSTANTS = array (
'CURLOPT_POSTQUOTE' => 'curl/curl_d.php',
'CURLOPT_POSTREDIR' => 'curl/curl_d.php',
'CURLOPT_PREQUOTE' => 'curl/curl_d.php',
'CURLOPT_PRE_PROXY' => 'curl/curl_d.php',
'CURLOPT_PRIVATE' => 'curl/curl_d.php',
'CURLOPT_PROGRESSFUNCTION' => 'curl/curl_d.php',
'CURLOPT_PROTOCOLS' => 'curl/curl_d.php',
@ -3236,7 +3291,25 @@ const CONSTANTS = array (
'CURLOPT_PROXYTYPE' => 'curl/curl_d.php',
'CURLOPT_PROXYUSERNAME' => 'curl/curl_d.php',
'CURLOPT_PROXYUSERPWD' => 'curl/curl_d.php',
'CURLOPT_PROXY_CAINFO' => 'curl/curl_d.php',
'CURLOPT_PROXY_CAPATH' => 'curl/curl_d.php',
'CURLOPT_PROXY_CRLFILE' => 'curl/curl_d.php',
'CURLOPT_PROXY_KEYPASSWD' => 'curl/curl_d.php',
'CURLOPT_PROXY_PINNEDPUBLICKEY' => 'curl/curl_d.php',
'CURLOPT_PROXY_SERVICE_NAME' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSLCERT' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSLCERTTYPE' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSLKEY' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSLKEYTYPE' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSLVERSION' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSL_CIPHER_LIST' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSL_OPTIONS' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSL_VERIFYHOST' => 'curl/curl_d.php',
'CURLOPT_PROXY_SSL_VERIFYPEER' => 'curl/curl_d.php',
'CURLOPT_PROXY_TLS13_CIPHERS' => 'curl/curl_d.php',
'CURLOPT_PROXY_TLSAUTH_PASSWORD' => 'curl/curl_d.php',
'CURLOPT_PROXY_TLSAUTH_TYPE' => 'curl/curl_d.php',
'CURLOPT_PROXY_TLSAUTH_USERNAME' => 'curl/curl_d.php',
'CURLOPT_PROXY_TRANSFER_MODE' => 'curl/curl_d.php',
'CURLOPT_PUT' => 'curl/curl_d.php',
'CURLOPT_QUOTE' => 'curl/curl_d.php',
@ -3246,6 +3319,7 @@ const CONSTANTS = array (
'CURLOPT_READFUNCTION' => 'curl/curl_d.php',
'CURLOPT_REDIR_PROTOCOLS' => 'curl/curl_d.php',
'CURLOPT_REFERER' => 'curl/curl_d.php',
'CURLOPT_REQUEST_TARGET' => 'curl/curl_d.php',
'CURLOPT_RESOLVE' => 'curl/curl_d.php',
'CURLOPT_RESUME_FROM' => 'curl/curl_d.php',
'CURLOPT_RETURNTRANSFER' => 'curl/curl_d.php',
@ -3259,9 +3333,11 @@ const CONSTANTS = array (
'CURLOPT_SASL_IR' => 'curl/curl_d.php',
'CURLOPT_SERVICE_NAME' => 'curl/curl_d.php',
'CURLOPT_SHARE' => 'curl/curl_d.php',
'CURLOPT_SOCKS5_AUTH' => 'curl/curl_d.php',
'CURLOPT_SOCKS5_GSSAPI_NEC' => 'curl/curl_d.php',
'CURLOPT_SOCKS5_GSSAPI_SERVICE' => 'curl/curl_d.php',
'CURLOPT_SSH_AUTH_TYPES' => 'curl/curl_d.php',
'CURLOPT_SSH_COMPRESSION' => 'curl/curl_d.php',
'CURLOPT_SSH_HOST_PUBLIC_KEY_MD5' => 'curl/curl_d.php',
'CURLOPT_SSH_KNOWNHOSTS' => 'curl/curl_d.php',
'CURLOPT_SSH_PRIVATE_KEYFILE' => 'curl/curl_d.php',
@ -3286,6 +3362,7 @@ const CONSTANTS = array (
'CURLOPT_SSL_VERIFYSTATUS' => 'curl/curl_d.php',
'CURLOPT_STDERR' => 'curl/curl_d.php',
'CURLOPT_STREAM_WEIGHT' => 'curl/curl_d.php',
'CURLOPT_SUPPRESS_CONNECT_HEADERS' => 'curl/curl_d.php',
'CURLOPT_TCP_FASTOPEN' => 'curl/curl_d.php',
'CURLOPT_TCP_KEEPALIVE' => 'curl/curl_d.php',
'CURLOPT_TCP_KEEPIDLE' => 'curl/curl_d.php',
@ -3298,6 +3375,8 @@ const CONSTANTS = array (
'CURLOPT_TIMEOUT' => 'curl/curl_d.php',
'CURLOPT_TIMEOUT_MS' => 'curl/curl_d.php',
'CURLOPT_TIMEVALUE' => 'curl/curl_d.php',
'CURLOPT_TIMEVALUE_LARGE' => 'curl/curl_d.php',
'CURLOPT_TLS13_CIPHERS' => 'curl/curl_d.php',
'CURLOPT_TLSAUTH_PASSWORD' => 'curl/curl_d.php',
'CURLOPT_TLSAUTH_TYPE' => 'curl/curl_d.php',
'CURLOPT_TLSAUTH_USERNAME' => 'curl/curl_d.php',
@ -3355,6 +3434,7 @@ const CONSTANTS = array (
'CURLPROTO_TELNET' => 'curl/curl_d.php',
'CURLPROTO_TFTP' => 'curl/curl_d.php',
'CURLPROXY_HTTP' => 'curl/curl_d.php',
'CURLPROXY_HTTPS' => 'curl/curl_d.php',
'CURLPROXY_HTTP_1_0' => 'curl/curl_d.php',
'CURLPROXY_SOCKS4' => 'curl/curl_d.php',
'CURLPROXY_SOCKS4A' => 'curl/curl_d.php',
@ -3366,6 +3446,7 @@ const CONSTANTS = array (
'CURLSSH_AUTH_AGENT' => 'curl/curl_d.php',
'CURLSSH_AUTH_ANY' => 'curl/curl_d.php',
'CURLSSH_AUTH_DEFAULT' => 'curl/curl_d.php',
'CURLSSH_AUTH_GSSAPI' => 'curl/curl_d.php',
'CURLSSH_AUTH_HOST' => 'curl/curl_d.php',
'CURLSSH_AUTH_KEYBOARD' => 'curl/curl_d.php',
'CURLSSH_AUTH_NONE' => 'curl/curl_d.php',
@ -3391,8 +3472,10 @@ const CONSTANTS = array (
'CURL_IPRESOLVE_V4' => 'curl/curl_d.php',
'CURL_IPRESOLVE_V6' => 'curl/curl_d.php',
'CURL_IPRESOLVE_WHATEVER' => 'curl/curl_d.php',
'CURL_LOCK_DATA_CONNECT' => 'curl/curl_d.php',
'CURL_LOCK_DATA_COOKIE' => 'curl/curl_d.php',
'CURL_LOCK_DATA_DNS' => 'curl/curl_d.php',
'CURL_LOCK_DATA_PSL' => 'curl/curl_d.php',
'CURL_LOCK_DATA_SSL_SESSION' => 'curl/curl_d.php',
'CURL_MAX_READ_SIZE' => 'curl/curl_d.php',
'CURL_NETRC_IGNORED' => 'curl/curl_d.php',
@ -3417,23 +3500,48 @@ const CONSTANTS = array (
'CURL_RTSPREQ_SET_PARAMETER' => 'curl/curl_d.php',
'CURL_RTSPREQ_TEARDOWN' => 'curl/curl_d.php',
'CURL_SSLVERSION_DEFAULT' => 'curl/curl_d.php',
'CURL_SSLVERSION_MAX_DEFAULT' => 'curl/curl_d.php',
'CURL_SSLVERSION_MAX_NONE' => 'curl/curl_d.php',
'CURL_SSLVERSION_MAX_TLSv1_0' => 'curl/curl_d.php',
'CURL_SSLVERSION_MAX_TLSv1_1' => 'curl/curl_d.php',
'CURL_SSLVERSION_MAX_TLSv1_2' => 'curl/curl_d.php',
'CURL_SSLVERSION_MAX_TLSv1_3' => 'curl/curl_d.php',
'CURL_SSLVERSION_SSLv2' => 'curl/curl_d.php',
'CURL_SSLVERSION_SSLv3' => 'curl/curl_d.php',
'CURL_SSLVERSION_TLSv1' => 'curl/curl_d.php',
'CURL_SSLVERSION_TLSv1_0' => 'curl/curl_d.php',
'CURL_SSLVERSION_TLSv1_1' => 'curl/curl_d.php',
'CURL_SSLVERSION_TLSv1_2' => 'curl/curl_d.php',
'CURL_SSLVERSION_TLSv1_3' => 'curl/curl_d.php',
'CURL_TIMECOND_IFMODSINCE' => 'curl/curl_d.php',
'CURL_TIMECOND_IFUNMODSINCE' => 'curl/curl_d.php',
'CURL_TIMECOND_LASTMOD' => 'curl/curl_d.php',
'CURL_TIMECOND_NONE' => 'curl/curl_d.php',
'CURL_TLSAUTH_SRP' => 'curl/curl_d.php',
'CURL_VERSION_ALTSVC' => 'curl/curl_d.php',
'CURL_VERSION_ASYNCHDNS' => 'curl/curl_d.php',
'CURL_VERSION_BROTLI' => 'curl/curl_d.php',
'CURL_VERSION_CONV' => 'curl/curl_d.php',
'CURL_VERSION_CURLDEBUG' => 'curl/curl_d.php',
'CURL_VERSION_DEBUG' => 'curl/curl_d.php',
'CURL_VERSION_GSSAPI' => 'curl/curl_d.php',
'CURL_VERSION_GSSNEGOTIATE' => 'curl/curl_d.php',
'CURL_VERSION_HTTP2' => 'curl/curl_d.php',
'CURL_VERSION_HTTPS_PROXY' => 'curl/curl_d.php',
'CURL_VERSION_IDN' => 'curl/curl_d.php',
'CURL_VERSION_IPV6' => 'curl/curl_d.php',
'CURL_VERSION_KERBEROS4' => 'curl/curl_d.php',
'CURL_VERSION_KERBEROS5' => 'curl/curl_d.php',
'CURL_VERSION_LARGEFILE' => 'curl/curl_d.php',
'CURL_VERSION_LIBZ' => 'curl/curl_d.php',
'CURL_VERSION_MULTI_SSL' => 'curl/curl_d.php',
'CURL_VERSION_NTLM' => 'curl/curl_d.php',
'CURL_VERSION_NTLM_WB' => 'curl/curl_d.php',
'CURL_VERSION_PSL' => 'curl/curl_d.php',
'CURL_VERSION_SPNEGO' => 'curl/curl_d.php',
'CURL_VERSION_SSL' => 'curl/curl_d.php',
'CURL_VERSION_SSPI' => 'curl/curl_d.php',
'CURL_VERSION_TLSAUTH_SRP' => 'curl/curl_d.php',
'CURL_VERSION_UNIX_SOCKETS' => 'curl/curl_d.php',
'CURL_WRITEFUNC_PAUSE' => 'curl/curl_d.php',
'DATE_ATOM' => 'date/date_d.php',
@ -3588,6 +3696,7 @@ const CONSTANTS = array (
'FILTER_NULL_ON_FAILURE' => 'filter/filter.php',
'FILTER_REQUIRE_ARRAY' => 'filter/filter.php',
'FILTER_REQUIRE_SCALAR' => 'filter/filter.php',
'FILTER_SANITIZE_ADD_SLASHES' => 'filter/filter.php',
'FILTER_SANITIZE_EMAIL' => 'filter/filter.php',
'FILTER_SANITIZE_ENCODED' => 'filter/filter.php',
'FILTER_SANITIZE_FULL_SPECIAL_CHARS' => 'filter/filter.php',
@ -3936,6 +4045,7 @@ const CONSTANTS = array (
'JSON_PARTIAL_OUTPUT_ON_ERROR' => 'json/json.php',
'JSON_PRESERVE_ZERO_FRACTION' => 'json/json.php',
'JSON_PRETTY_PRINT' => 'json/json.php',
'JSON_THROW_ON_ERROR' => 'json/json.php',
'JSON_UNESCAPED_LINE_TERMINATORS' => 'json/json.php',
'JSON_UNESCAPED_SLASHES' => 'json/json.php',
'JSON_UNESCAPED_UNICODE' => 'json/json.php',
@ -3954,6 +4064,8 @@ const CONSTANTS = array (
'LC_NUMERIC' => 'standard/standard_defines.php',
'LC_TIME' => 'standard/standard_defines.php',
'LDAP_CONTROL_ASSERT' => 'ldap/ldap.php',
'LDAP_CONTROL_AUTHZID_REQUEST' => 'ldap/ldap.php',
'LDAP_CONTROL_AUTHZID_RESPONSE' => 'ldap/ldap.php',
'LDAP_CONTROL_DONTUSECOPY' => 'ldap/ldap.php',
'LDAP_CONTROL_MANAGEDSAIT' => 'ldap/ldap.php',
'LDAP_CONTROL_PAGEDRESULTS' => 'ldap/ldap.php',
@ -4113,9 +4225,14 @@ const CONSTANTS = array (
'LOG_USER' => 'standard/standard_defines.php',
'LOG_UUCP' => 'standard/standard_defines.php',
'LOG_WARNING' => 'standard/standard_defines.php',
'MB_CASE_FOLD' => 'mbstring/mbstring.php',
'MB_CASE_FOLD_SIMPLE' => 'mbstring/mbstring.php',
'MB_CASE_LOWER' => 'mbstring/mbstring.php',
'MB_CASE_LOWER_SIMPLE' => 'mbstring/mbstring.php',
'MB_CASE_TITLE' => 'mbstring/mbstring.php',
'MB_CASE_TITLE_SIMPLE' => 'mbstring/mbstring.php',
'MB_CASE_UPPER' => 'mbstring/mbstring.php',
'MB_CASE_UPPER_SIMPLE' => 'mbstring/mbstring.php',
'MB_OVERLOAD_MAIL' => 'mbstring/mbstring.php',
'MB_OVERLOAD_REGEX' => 'mbstring/mbstring.php',
'MB_OVERLOAD_STRING' => 'mbstring/mbstring.php',
@ -4469,6 +4586,7 @@ const CONSTANTS = array (
'OP_SHORTCACHE' => 'imap/imap.php',
'OP_SILENT' => 'imap/imap.php',
'PASSWORD_ARGON2I' => 'standard/password.php',
'PASSWORD_ARGON2ID' => 'standard/password.php',
'PASSWORD_ARGON2_DEFAULT_MEMORY_COST' => 'standard/password.php',
'PASSWORD_ARGON2_DEFAULT_THREADS' => 'standard/password.php',
'PASSWORD_ARGON2_DEFAULT_TIME_COST' => 'standard/password.php',
@ -4502,7 +4620,10 @@ const CONSTANTS = array (
'PCNTL_EPERM' => 'pcntl/pcntl.php',
'PCNTL_ESRCH' => 'pcntl/pcntl.php',
'PCNTL_ETXTBSY' => 'pcntl/pcntl.php',
'PCRE_JIT_SUPPORT' => 'pcre/pcre.php',
'PCRE_VERSION' => 'pcre/pcre.php',
'PCRE_VERSION_MAJOR' => 'pcre/pcre.php',
'PCRE_VERSION_MINOR' => 'pcre/pcre.php',
'PEAR_EXTENSION_DIR' => 'Core/Core_d.php',
'PEAR_INSTALL_DIR' => 'Core/Core_d.php',
'PGSQL_ASSOC' => 'pgsql/pgsql.php',

View File

@ -1452,7 +1452,7 @@ class RecursiveTreeIterator extends RecursiveIteratorIterator
* @param string $postfix
*/
#[TentativeType]
public function setPostfix(): void {}
public function setPostfix(string $postfix): void {}
/**
* Set a part of the prefix

View File

@ -143,9 +143,9 @@ function bcsqrt(string $num, ?int $scale): ?string {}
* Set default scale parameter for all bc math functions
* @link https://php.net/manual/en/function.bcscale.php
* @param int $scale
* @return int|bool
* @return int
*/
function bcscale(int $scale): bool {}
function bcscale(int $scale = null): int {}
/**
* Compare two arbitrary precision numbers

View File

@ -2547,6 +2547,324 @@ define('CURL_PUSH_DENY', 1);
*/
define('CURL_MAX_READ_SIZE', 524288);
/**
* Enables the use of an abstract Unix domain socket instead of establishing a TCP connection to a host and sets the path to the given string.
* This option shares the same semantics as <b>CURLOPT_UNIX_SOCKET_PATH</b>.
* These two options share the same storage and therefore only one of them can be set per handle.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_ABSTRACT_UNIX_SOCKET', 10264);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_MAX_DEFAULT', 65536);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_MAX_NONE', 0);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_MAX_TLSv1_0', 262144);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_MAX_TLSv1_1', 327680);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_MAX_TLSv1_2', 393216);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_MAX_TLSv1_3', 458752);
/**
* <b>TRUE</b> to suppress proxy CONNECT response headers from the user callback functions
* <b>CURLOPT_HEADERFUNCTION</b> and <b>CURLOPT_WRITEFUNCTION</b>,
* when <b>CURLOPT_HTTPPROXYTUNNEL</b> is used and a <em>CONNECT</em> request is made.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_SUPPRESS_CONNECT_HEADERS', 265);
/**
* Value for the <b>CURLOPT_HTTPAUTH</b> option.
* Allows GSS-API authentication.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURLAUTH_GSSAPI', 4);
/**
* The content-length of the download. This is the value read from the Content-Type: field. -1 if the size isn't known
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_CONTENT_LENGTH_DOWNLOAD_T', 6291471);
/**
* The specified size of the upload. -1 if the size isn't known
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_CONTENT_LENGTH_UPLOAD_T', 6291472);
/**
* Total number of bytes that were downloaded.
* The number is only for the latest transfer and will be reset again for each new transfer
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_SIZE_DOWNLOAD_T', 6291464);
/**
* Total number of bytes that were uploaded
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_SIZE_UPLOAD_T', 6291463);
/**
* The average download speed in bytes/second that curl measured for the complete download
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_SPEED_DOWNLOAD_T', 6291465);
/**
* The average upload speed in bytes/second that curl measured for the complete upload
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_SPEED_UPLOAD_T', 6291466);
/**
* Specify an alternative target for this request
* @link https://www.php.net/manual/en/curl.constants.php
* @link https://curl.haxx.se/libcurl/c/CURLOPT_REQUEST_TARGET.html
* @since 7.3
*/
define('CURLOPT_REQUEST_TARGET', 10266);
/**
* The SOCKS5 authentication method(s) to use. The options are: <b>CURLAUTH_BASIC</b>, <b>CURLAUTH_GSSAPI</b>, <b>CURLAUTH_NONE</b>.
* The bitwise | (or) operator can be used to combine more than one method. If this is done,
* cURL will poll the server to see what methods it supports and pick the best one.
* <b>CURLAUTH_BASIC</b> allows username/password authentication.
* <b>CURLAUTH_GSSAPI</b> allows GSS-API authentication.
* <b>CURLAUTH_NONE</b> allows no authentication.
* Defaults to <b>CURLAUTH_BASIC</b>|<b>CURLAUTH_GSSAPI</b>.
* Set the actual username and password with the <b>CURLOPT_PROXYUSERPWD</b> option.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_SOCKS5_AUTH', 267);
/**
* <b>TRUE</b> to enable built-in SSH compression. This is a request, not an order; the server may or may not do it.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_SSH_COMPRESSION', 268);
/**
* libcurl was build with multiple ssh backends.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_MULTI_SSL', 4194304);
/**
* Supports HTTP Brotli content encoding using libbrotlidec
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_BROTLI', 8388608);
/**
* Value for the <b>CURLSHOPT_SHARE</b> option.
* Put the connection cache in the share object and make all easy handles using this share object share the connection cache.
* Using this, you can for example do multi-threaded libcurl use with one handle in each thread, and yet
* have a shared pool of unused connections and this way get way better connection re-use
* than if you use one separate pool in each thread.
* Connections that are used for HTTP/1.1 Pipelining or HTTP/2 multiplexing only get additional transfers
* added to them if the existing connection is held by the same multi or easy handle.
* libcurl does not support doing HTTP/2 streams in different threads using a shared connection.
* @link https://php.net/manual/en/curl.constants.php
* @link https://curl.haxx.se/libcurl/c/curl_share_setopt.html
* @since 7.3
*/
define('CURL_LOCK_DATA_CONNECT', 5);
/**
* Value for the <b>CURLOPT_SSH_AUTH_TYPES</b> option.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURLSSH_AUTH_GSSAPI', 32);
/**
* Remote time of the retrieved document (as Unix timestamp),
* an alternative to <b>CURLINFO_FILETIME</b> to allow systems with 32 bit long variables to extract dates
* outside of the 32bit timestamp range
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_FILETIME_T', 6291470);
/**
* Head start for ipv6 for the happy eyeballs algorithm.
* Happy eyeballs attempts to connect to both IPv4 and IPv6 addresses for dual-stack hosts,
* preferring IPv6 first for timeout milliseconds.
* Defaults to <b>CURL_HET_DEFAULT</b>, which is currently 200 milliseconds.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS', 271);
/**
* The time in seconds since January 1st, 1970.
* The time will be used by <b>CURLOPT_TIMECONDITION</b>. Defaults to zero.
* The difference between this option and <b>CURLOPT_TIMEVALUE</b> is the type of the argument.
* On systems where 'long' is only 32 bit wide, this option has to be used to set dates beyond the year 2038.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_TIMEVALUE_LARGE', 30270);
/**
* <b>TRUE</b> to shuffle the order of all returned addresses so that they will be used in a random order,
* when a name is resolved and more than one IP address is returned.
* This may cause IPv4 to be used before IPv6 or vice versa.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_DNS_SHUFFLE_ADDRESSES', 275);
/**
* <b>TRUE</b> to send an HAProxy PROXY protocol v1 header at the start of the connection.
* The default action is not to send this header.
* @link https://php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURLOPT_HAPROXYPROTOCOL', 274);
/**
* Value for the <b>CURLSHOPT_SHARE</b> option.
* The Public Suffix List stored in the share object is made available to all easy handle bound to the later.
* Since the Public Suffix List is periodically refreshed, this avoids updates in too many different contexts.
* @link https://php.net/manual/en/curl.constants.php
* @link https://curl.haxx.se/libcurl/c/curl_share_setopt.html
* @since 7.3
*/
define('CURL_LOCK_DATA_PSL', 6);
/**
* Value for the <b>CURLOPT_HTTPAUTH</b> option.
* HTTP Bearer token authentication, used primarily in OAuth 2.0 protocol.
* @link https://php.net/manual/en/curl.constants.php
* https://curl.haxx.se/libcurl/c/CURLOPT_HTTPAUTH.html
* @since 7.3
*/
define('CURLAUTH_BEARER', 64);
/**
* Time, in microseconds, it took from the start until the SSL/SSH connect/handshake to the remote host was completed
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_APPCONNECT_TIME_T', 6291512);
/**
* Total time taken, in microseconds, from the start until the connection to the remote host (or proxy) was completed
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_CONNECT_TIME_T', 6291508);
/**
* Time in microseconds from the start until the name resolving was completed
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_NAMELOOKUP_TIME_T', 6291507);
/**
* Time taken from the start until the file transfer is just about to begin, in microseconds
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_PRETRANSFER_TIME_T', 6291509);
/**
* Total time, in microseconds,
* it took for all redirection steps include name lookup, connect, pretransfer and transfer before final transaction was started
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_REDIRECT_TIME_T', 6291511);
/**
* Time, in microseconds, it took from the start until the first byte is received
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_STARTTRANSFER_TIME_T', 6291510);
/**
* Total time in microseconds for the previous transfer, including name resolving, TCP connect etc.
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_TOTAL_TIME_T', 6291506);
/**
* <b>TRUE</b> to not allow URLs that include a username. Usernames are allowed by default (0).
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_DISALLOW_USERNAME_IN_URL', 278);
/**
* The list of cipher suites to use for the TLS 1.3 connection to a proxy.
* The list must be syntactically correct, it consists of one or more cipher suite strings separated by colons.
* This option is currently used only when curl is built to use OpenSSL 1.1.1 or later.
* If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the <b>CURLOPT_PROXY_SSL_CIPHER_LIST</b> option.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_TLS13_CIPHERS', 10277);
/**
* The list of cipher suites to use for the TLS 1.3 connection.
* The list must be syntactically correct, it consists of one or more cipher suite strings separated by colons.
* This option is currently used only when curl is built to use OpenSSL 1.1.1 or later.
* If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the <b>CURLOPT_SSL_CIPHER_LIST</b> option.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_TLS13_CIPHERS', 10276);
/**
* Time allowed to wait for FTP response.
* @link https://curl.haxx.se/libcurl/c/CURLOPT_FTP_RESPONSE_TIMEOUT.html
@ -3520,6 +3838,99 @@ define('CURLOPT_CONNECT_TO', 10243);
*/
define('CURLOPT_TCP_FASTOPEN', 244);
/**
* The server sent data libcurl couldn't parse.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURLE_WEIRD_SERVER_REPLY', 8);
/**
* <b>TRUE</b> to keep sending the request body if the HTTP code returned is equal to or larger than 300.
* The default action would be to stop sending and close the stream or connection. Suitable for manual NTLM authentication.
* Most applications do not need this option.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_KEEP_SENDING_ON_ERROR', 245);
/**
* Value for the <b>CURLOPT_SSLVERSION</b> option.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_SSLVERSION_TLSv1_3', 7);
/**
* Supports HTTPS proxy.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_HTTPS_PROXY', 2097152);
/**
* The protocol used in the last HTTP connection. The returned value will be exactly one of the <b>CURLPROTO_*</b> values
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_PROTOCOL', 2097200);
/**
* Supports asynchronous name lookups.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_ASYNCHDNS', 128);
/**
* Supports memory tracking debug capabilities.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3.6
*/
define('CURL_VERSION_CURLDEBUG', 8192);
/**
* Supports character conversions.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_CONV', 4096);
/**
* libcurl was built with debug capabilities
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_DEBUG', 64);
/**
* Supports HTTP GSS-Negotiate.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_GSSNEGOTIATE', 32);
/**
* Supports the IDNA.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_IDN', 1024);
/**
* Supports large files.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_LARGEFILE', 512);
/**
* Supports HTTP NTLM.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_NTLM', 16);
/**
* Supports the Mozilla's Public Suffix List.
* @link https://www.php.net/manual/en/curl.constants.php
@ -3527,9 +3938,261 @@ define('CURLOPT_TCP_FASTOPEN', 244);
*/
define('CURL_VERSION_PSL', 1048576);
/**
* Supports for SPNEGO authentication (RFC 2478).
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_SPNEGO', 256);
/**
* Supports SSPI. Windows-specific.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_SSPI', 2048);
/**
* Supports the TLS-SRP.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_TLSAUTH_SRP', 16384);
/**
* Supports the NTLM delegation to a winbind helper.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_NTLM_WB', 32768);
/**
* Supports the GSSAPI. This makes libcurl use provided functions for Kerberos and SPNEGO authentication.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_GSSAPI', 131072);
/**
* Supports Kerberos V5 authentication for FTP, IMAP, POP3, SMTP and SOCKSv5 proxy.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURL_VERSION_KERBEROS5', 262144);
/**
* The path to proxy Certificate Authority (CA) bundle.
* Set the path as a string naming a file holding one or more certificates to verify the HTTPS proxy with.
* This option is for connecting to an HTTPS proxy, not an HTTPS server.
* Defaults set to the system path where libcurl's cacert bundle is assumed to be stored.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_CAINFO', 10246);
/**
* The directory holding multiple CA certificates to verify the HTTPS proxy with.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_CAPATH', 10247);
/**
* Set the file name with the concatenation of CRL (Certificate Revocation List) in PEM format
* to use in the certificate validation that occurs during the SSL exchange.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_CRLFILE', 10260);
/**
* Set the string be used as the password required to use the <b>CURLOPT_PROXY_SSLKEY</b> private key.
* You never needed a passphrase to load a certificate but you need one to load your private key.
* This option is for connecting to an HTTPS proxy, not an HTTPS server.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_KEYPASSWD', 10258);
/**
* The format of your client certificate used when connecting to an HTTPS proxy. Supported formats are "PEM" and "DER", except with Secure Transport.
* OpenSSL (versions 0.9.3 and later) and Secure Transport (on iOS 5 or later, or OS X 10.7 or later) also support "P12" for PKCS#12-encoded files.
* Defaults to "PEM".
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSLCERTTYPE', 10255);
/**
* The format of your private key. Supported formats are "PEM", "DER" and "ENG".
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSLKEYTYPE', 10257);
/**
* One of <b>CURL_SSLVERSION_DEFAULT</b>, <b>CURL_SSLVERSION_TLSv1</b>, <b>CURL_SSLVERSION_TLSv1_0</b>, <b>CURL_SSLVERSION_TLSv1_1</b>, <b>CURL_SSLVERSION_TLSv1_2</b>,
* <b>CURL_SSLVERSION_TLSv1_3</b>, <b>CURL_SSLVERSION_MAX_DEFAULT</b>, <b>CURL_SSLVERSION_MAX_TLSv1_0</b>, <b>CURL_SSLVERSION_MAX_TLSv1_1</b>,
* <b>CURL_SSLVERSION_MAX_TLSv1_2</b>, <b>CURL_SSLVERSION_MAX_TLSv1_3</b> or <b>CURL_SSLVERSION_SSLv3</b>.
* See also <b>CURLOPT_SSLVERSION</b>.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSLVERSION', 250);
/**
* Tusername to use for the HTTPS proxy TLS authentication method specified with the <b>CURLOPT_PROXY_TLSAUTH_TYPE</b> option.
* Requires that the <b>CURLOPT_PROXY_TLSAUTH_PASSWORD</b> option to also be set.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_TLSAUTH_USERNAME', 10251);
/**
* The password to use for the TLS authentication method specified with the <b>CURLOPT_PROXY_TLSAUTH_TYPE</b> option.
* Requires that the <b>CURLOPT_PROXY_TLSAUTH_USERNAME</b> option to also be set.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_TLSAUTH_PASSWORD', 10252);
/**
* The method of the TLS authentication used for the HTTPS connection. Supported method is "SRP".
* Secure Remote Password (SRP) authentication for TLS provides mutual authentication if both sides have a shared secret.
* To use TLS-SRP, you must also set the <b>CURLOPT_PROXY_TLSAUTH_USERNAME</b> and <b>CURLOPT_PROXY_TLSAUTH_PASSWORD</b> options.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_TLSAUTH_TYPE', 10253);
/**
* Value for the <b>CURLOPT_PROXYTYPE</b> option.
* Use HTTPS Proxy.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3
*/
define('CURLPROXY_HTTPS', 2);
/**
* Set the pinned public key for HTTPS proxy. The string can be the file name of your pinned public key. The file format expected is "PEM" or "DER".
* The string can also be any number of base64 encoded sha256 hashes preceded by "sha256//" and separated by ";"
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_PINNEDPUBLICKEY', 10263);
/**
* The file name of your private key used for connecting to the HTTPS proxy.
* The default format is "PEM" and can be changed with <b>CURLOPT_PROXY_SSLKEYTYPE</b>.
* (iOS and Mac OS X only) This option is ignored if curl was built against Secure Transport.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSLKEY', 10256);
/**
* The list of ciphers to use for the connection to the HTTPS proxy.
* The list must be syntactically correct, it consists of one or more cipher strings separated by colons.
* Commas or spaces are also acceptable separators but colons are normally used, !, - and + can be used as operators.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSL_CIPHER_LIST', 10259);
/**
* Set proxy SSL behavior options, which is a bitmask of any of the following constants:
* <b>CURLSSLOPT_ALLOW_BEAST</b>: do not attempt to use any workarounds for a security flaw in the SSL3 and TLS1.0 protocols.
* <b>CURLSSLOPT_NO_REVOKE</b>: disable certificate revocation checks for those SSL backends where such behavior is present. (curl >= 7.44.0)
* <b>CURLSSLOPT_NO_PARTIALCHAIN</b>: do not accept "partial" certificate chains, which it otherwise does by default. (curl >= 7.68.0)
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSL_OPTIONS', 261);
/**
* Set to 2 to verify in the HTTPS proxy's certificate name fields against the proxy name.
* When set to 0 the connection succeeds regardless of the names used in the certificate.
* Use that ability with caution! 1 treated as a debug option in curl 7.28.0 and earlier.
* From curl 7.28.1 to 7.65.3 CURLE_BAD_FUNCTION_ARGUMENT is returned.
* From curl 7.66.0 onwards 1 and 2 is treated as the same value.
* In production environments the value of this option should be kept at 2 (default value).
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSL_VERIFYHOST', 249);
/**
* <b>FALSE</b> to stop cURL from verifying the peer's certificate.
* Alternate certificates to verify against can be specified with the <b>CURLOPT_CAINFO</b> option or
* a certificate directory can be specified with the <b>CURLOPT_CAPATH</b> option.
* When set to false, the peer certificate verification succeeds regardless.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSL_VERIFYPEER', 248);
/**
* The file name of your client certificate used to connect to the HTTPS proxy.
* The default format is "P12" on Secure Transport and "PEM" on other engines, and can be changed with <b>CURLOPT_PROXY_SSLCERTTYPE</b>.
* With NSS or Secure Transport, this can also be the nickname of the certificate you wish to authenticate with as it is named in the security database.
* If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PROXY_SSLCERT', 10254);
/**
* The URL scheme used for the most recent connection
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_SCHEME', 1048625);
/**
* Supports UNIX sockets.
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.0.7
*/
define('CURL_VERSION_UNIX_SOCKETS', 524288);
/**
* The version used in the last HTTP connection. The return value will be one of the defined
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_HTTP_VERSION', 2097198);
/**
* Set a string holding the host name or dotted numerical IP address to be used as the preproxy that curl connects to before
* it connects to the HTTP(S) proxy specified in the <b>CURLOPT_PROXY</b> option for the upcoming request.
* The preproxy can only be a SOCKS proxy and it should be prefixed with [scheme]:// to specify which kind of socks is used.
* A numerical IPv6 address must be written within [brackets]. Setting the preproxy to an empty string explicitly disables the use of a preproxy.
* To specify port number in this string, append :[port] to the end of the host name.
* The proxy's port number may optionally be specified with the separate option <b>CURLOPT_PROXYPORT</b>.
* Defaults to using port 1080 for proxies if a port is not specified.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_PRE_PROXY', 10262);
/**
* The result of the certificate verification that was requested (using the <b>CURLOPT_PROXY_SSL_VERIFYPEER</b> option).
* Only used for HTTPS proxies
* @link https://www.php.net/manual/en/function.curl-getinfo.php
* @since 7.3
*/
define('CURLINFO_PROXY_SSL_VERIFYRESULT', 2097199);
/**
* Whether to allow HTTP/0.9 responses.
* Defaults to <b>FALSE</b> as of libcurl 7.66.0; formerly it defaulted to <b>TRUE</b>.
* @link https://www.php.net/manual/en/function.curl-setopt.php
* @since 7.3
*/
define('CURLOPT_HTTP09_ALLOWED', 285);
/**
* @link https://www.php.net/manual/en/curl.constants.php
* @since 7.3.6
*/
define('CURL_VERSION_ALTSVC', 16777216);

View File

@ -503,6 +503,14 @@ class DateTime implements DateTimeInterface
*/
public function __construct($datetime = 'now', DateTimeZone $timezone = null) {}
/**
* @param DateTimeImmutable $object
* @return DateTime
* @since 7.3
*/
#[TentativeType]
public static function createFromImmutable(DateTimeImmutable $object): DateTime {}
/**
* Parse a string into a new DateTime object according to the specified format
* @param string $format Format accepted by date().
@ -931,7 +939,7 @@ class DatePeriod implements IteratorAggregate
public function __construct($isostr, $options = 0) {}
#[TentativeType]
public static function __set_state(): DatePeriod {}
public static function __set_state(array $array): DatePeriod {}
/**
* Gets the interval

View File

@ -131,6 +131,11 @@ define('FILTER_VALIDATE_MAC', 276);
*/
define('FILTER_DEFAULT', 516);
/**
* @since 7.3
*/
define('FILTER_SANITIZE_ADD_SLASHES', 523);
/**
* ID of "unsafe_raw" filter.
* @link https://php.net/manual/en/filter.constants.php

View File

@ -1,5 +1,12 @@
<?php
/**
* Returns FPM status info array
* @return array|false
* @since 7.3
*/
function fpm_get_status(): array|false {}
/**
* This function flushes all response data to the client and finishes the request.
* This allows for time consuming tasks to be performed without leaving the connection to the client open.

View File

@ -86,7 +86,7 @@ define('FTP_MOREDATA', 2);
* @return bool
* @since 7.2
*/
function ftp_append($ftp, string $remote_filename, string $local_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode): bool {}
function ftp_append($ftp, string $remote_filename, string $local_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY): bool {}
/**
* returns a list of files in the given directory
@ -361,7 +361,7 @@ function ftp_pasv($ftp, bool $enable): bool {}
* </p>
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ftp_get($ftp, string $local_filename, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): bool {}
function ftp_get($ftp, string $local_filename, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): bool {}
/**
* Downloads a file from the FTP server and saves to an open file
@ -383,7 +383,7 @@ function ftp_get($ftp, string $local_filename, string $remote_filename, #[Expect
* </p>
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ftp_fget($ftp, $stream, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): bool {}
function ftp_fget($ftp, $stream, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): bool {}
/**
* Uploads a file to the FTP server
@ -403,7 +403,7 @@ function ftp_fget($ftp, $stream, string $remote_filename, #[ExpectedValues([FTP_
* @param int $offset [optional] <p>The position in the remote file to start uploading to.</p>
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ftp_put($ftp, string $remote_filename, string $local_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): bool {}
function ftp_put($ftp, string $remote_filename, string $local_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): bool {}
/**
* Uploads from an open file to the FTP server
@ -423,7 +423,7 @@ function ftp_put($ftp, string $remote_filename, string $local_filename, #[Expect
* @param int $offset [optional] <p>The position in the remote file to start uploading to.</p>
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ftp_fput($ftp, string $remote_filename, $stream, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): bool {}
function ftp_fput($ftp, string $remote_filename, $stream, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): bool {}
/**
* Returns the size of the given file
@ -595,7 +595,7 @@ function ftp_get_option($ftp, #[ExpectedValues([FTP_TIMEOUT_SEC, FTP_AUTOSEEK])]
* or <b>FTP_MOREDATA</b>.
*/
#[ExpectedValues([FTP_FAILED, FTP_FINISHED, FTP_MOREDATA])]
function ftp_nb_fget($ftp, $stream, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): int {}
function ftp_nb_fget($ftp, $stream, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): int {}
/**
* Retrieves a file from the FTP server and writes it to a local file (non-blocking)
@ -617,7 +617,7 @@ function ftp_nb_fget($ftp, $stream, string $remote_filename, #[ExpectedValues([F
* or <b>FTP_MOREDATA</b>.
*/
#[ExpectedValues([FTP_FAILED, FTP_FINISHED, FTP_MOREDATA])]
function ftp_nb_get($ftp, string $local_filename, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): int {}
function ftp_nb_get($ftp, string $local_filename, string $remote_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): int {}
/**
* Continues retrieving/sending a file (non-blocking)
@ -651,7 +651,7 @@ function ftp_nb_continue($ftp): int {}
* or <b>FTP_MOREDATA</b>.
*/
#[ExpectedValues([FTP_FAILED, FTP_FINISHED, FTP_MOREDATA])]
function ftp_nb_put($ftp, string $remote_filename, string $local_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): int|false {}
function ftp_nb_put($ftp, string $remote_filename, string $local_filename, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): int|false {}
/**
* Stores a file from an open file to the FTP server (non-blocking)
@ -673,7 +673,7 @@ function ftp_nb_put($ftp, string $remote_filename, string $local_filename, #[Exp
* or <b>FTP_MOREDATA</b>.
*/
#[ExpectedValues([FTP_FAILED, FTP_FINISHED, FTP_MOREDATA])]
function ftp_nb_fput($ftp, string $remote_filename, $stream, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode, int $offset = 0): int {}
function ftp_nb_fput($ftp, string $remote_filename, $stream, #[ExpectedValues([FTP_ASCII, FTP_BINARY])] int $mode = FTP_BINARY, int $offset = 0): int {}
/**
* Alias of <b>ftp_close</b>

View File

@ -750,6 +750,61 @@ function gmp_rootrem(GMP|string|int $num, int $nth): array {}
#[Pure]
function gmp_nextprime(GMP|string|int $num): GMP {}
/**
* Calculates binomial coefficient
*
* @link https://www.php.net/manual/en/function.gmp-binomial.php
*
* @param GMP|string|float|int $n
* @param int $k
* @return GMP|false
*
* @since 7.3
*/
#[Pure]
function gmp_binomial(GMP|string|int $n, int $k): GMP {}
/**
* Computes the Kronecker symbol
*
* @link https://www.php.net/manual/en/function.gmp-kronecker.php
*
* @param GMP|string|float|int $num1
* @param GMP|string|float|int $num2
* @return int
*
* @since 7.3
*/
#[Pure]
function gmp_kronecker(GMP|string|int $num1, GMP|string|int $num2): int {}
/**
* Computes the least common multiple of A and B
*
* @link https://www.php.net/manual/en/function.gmp-lcm.php
*
* @param GMP|string|float|int $num1
* @param GMP|string|float|int $num2
* @return GMP
*
* @since 7.3
*/
#[Pure]
function gmp_lcm(GMP|string|int $num1, GMP|string|int $num2): GMP {}
/**
* Perfect power check
*
* @link https://www.php.net/manual/en/function.gmp-perfect-power.php
*
* @param GMP|string|float|int $num
* @return bool
*
* @since 7.3
*/
#[Pure]
function gmp_perfect_power(GMP|string|int $num): bool {}
class GMP implements Serializable
{
/**

View File

@ -3296,6 +3296,20 @@ function intl_is_failure(int $errorCode): bool {}
#[Pure]
function intl_error_name(int $errorCode): string {}
/**
* Gets the Decomposition_Mapping property for the given UTF-8 encoded code point
*
* @link https://www.php.net/manual/en/normalizer.getrawdecomposition.php
*
* @param string $string
* @param int $form
* @return string|null
*
* @since 7.3
*/
#[Pure]
function normalizer_get_raw_decomposition(string $string): ?string {}
/**
* @return IntlTimeZone
* @since 5.5
@ -4568,6 +4582,17 @@ class Normalizer
*/
#[TentativeType]
public static function isNormalized($string, $form = Normalizer::FORM_C): bool {}
/**
* @param string $string <p>The input string to normalize</p>
* @param string $form
* @return string|null <p>Returns a string containing the Decomposition_Mapping property, if present in the UCD.
* Returns null if there is no Decomposition_Mapping property for the character.</p>
* @link https://www.php.net/manual/en/normalizer.getrawdecomposition.php
* @since 7.3
*/
#[TentativeType]
public static function getRawDecomposition(string $string): ?string {}
}
class Locale

View File

@ -206,6 +206,15 @@ define('JSON_ERROR_INVALID_PROPERTY_NAME', 9);
*/
define('JSON_ERROR_UTF16', 10);
/**
* Throws JsonException if an error occurs instead of setting the global error state
* that is retrieved with json_last_error() and json_last_error_msg().
*
* {@see JSON_PARTIAL_OUTPUT_ON_ERROR} takes precedence over JSON_THROW_ON_ERROR.
* @since 7.3
*/
define('JSON_THROW_ON_ERROR', 4194304);
/**
* (PHP 5 >= 5.2.0, PECL json >= 1.2.0)<br/>
* Returns the JSON representation of a value
@ -436,3 +445,18 @@ class JsonIncrementalParser
#[Pure]
public function get($options) {}
}
/**
* Class JsonException
*
* <p>A new flag has been added, JSON_THROW_ON_ERROR, which can be used with
* json_decode() or json_encode() and causes these functions to throw a
* JsonException upon an error, instead of setting the global error state that
* is retrieved with json_last_error(). JSON_PARTIAL_OUTPUT_ON_ERROR takes
* precedence over <b>JSON_THROW_ON_ERROR</b>.
* </p>
*
* @since 7.3
* @link https://wiki.php.net/rfc/json_throw_on_error
*/
class JsonException extends Exception {}

View File

@ -379,6 +379,16 @@ define('LDAP_EXOP_TURN', "1.3.6.1.1.19");
*/
define('LDAP_EXOP_WHO_AM_I', "1.3.6.1.4.1.4203.1.11.3");
/**
* @since 7.3
*/
define('LDAP_CONTROL_AUTHZID_REQUEST', "2.16.840.1.113730.3.4.16");
/**
* @since 7.3
*/
define('LDAP_CONTROL_AUTHZID_RESPONSE', "2.16.840.1.113730.3.4.15");
/**
* PASSWD extended operation helper
* @link https://www.php.net/manual/en/function.ldap-exop-passwd.php
@ -390,7 +400,18 @@ define('LDAP_EXOP_WHO_AM_I', "1.3.6.1.4.1.4203.1.11.3");
* @return string|bool Returns the generated password if newpw is empty or omitted. Otherwise returns TRUE on success and FALSE on failure.
* @since 7.2
*/
function ldap_exop_passwd($ldap, string $user, string $old_password, string $new_password): string|bool {}
function ldap_exop_passwd($ldap, string $user = '', string $old_password = '', string $new_password = '', &$controls = null): string|bool {}
/**
* Refresh extended operation helper
* @link https://www.php.net/manual/en/function.ldap-exop-refresh.php
* @param resource $ldap An LDAP link identifier, returned by ldap_connect().
* @param string $dn dn of the entry to refresh.
* @param int $ttl $ttl Time in seconds (between 1 and 31557600) that the client requests that the entry exists in the directory before being automatically removed.
* @return int|false From RFC: The responseTtl field is the time in seconds which the server chooses to have as the time-to-live field for that entry. It must not be any smaller than that which the client requested, and it may be larger. However, to allow servers to maintain a relatively accurate directory, and to prevent clients from abusing the dynamic extensions, servers are permitted to shorten a client-requested time-to-live value, down to a minimum of 86400 seconds (one day). FALSE will be returned on error.
* @since 7.3
*/
function ldap_exop_refresh($ldap, string $dn, int $ttl): int|false {}
/**
* WHOAMI extended operation helper
@ -488,6 +509,21 @@ function ldap_close($ldap): bool {}
*/
function ldap_bind($ldap, ?string $dn, ?string $password): bool {}
/**
* Bind to LDAP directory
* Does the same thing as ldap_bind() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://php.net/manual/en/function.ldap-bind.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string|null $dn [optional]
* @param string|null $password [optional]
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_bind_ext($ldap, ?string $dn, ?string $password, array $controls = null) {}
/**
* Bind to LDAP directory using SASL
* @link https://php.net/manual/en/function.ldap-sasl-bind.php
@ -575,7 +611,7 @@ function ldap_unbind($ldap): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false a search result identifier or <b>FALSE</b> on error.
*/
function ldap_read($ldap, array|string $base, array|string $filter, array $attributes = [], int $attributes_only = 0, int $sizelimit = -1, int $timelimit = -1, int $deref = 0) {}
function ldap_read($ldap, array|string $base, array|string $filter, array $attributes = [], int $attributes_only = 0, int $sizelimit = -1, int $timelimit = -1, int $deref = 0, array $controls = null) {}
/**
* Single-level search
@ -633,7 +669,7 @@ function ldap_read($ldap, array|string $base, array|string $filter, array $attri
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false a search result identifier or <b>FALSE</b> on error.
*/
function ldap_list($ldap, array|string $base, array|string $filter, array $attributes = [], int $attributes_only = 0, int $sizelimit = -1, int $timelimit = -1, int $deref = 0) {}
function ldap_list($ldap, array|string $base, array|string $filter, array $attributes = [], int $attributes_only = 0, int $sizelimit = -1, int $timelimit = -1, int $deref = 0, array $controls = null) {}
/**
* Search LDAP tree
@ -695,7 +731,7 @@ function ldap_list($ldap, array|string $base, array|string $filter, array $attri
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false a search result identifier or <b>FALSE</b> on error.
*/
function ldap_search($ldap, array|string $base, array|string $filter, array $attributes = [], int $attributes_only = 0, int $sizelimit = -1, int $timelimit = -1, int $deref = 0) {}
function ldap_search($ldap, array|string $base, array|string $filter, array $attributes = [], int $attributes_only = 0, int $sizelimit = -1, int $timelimit = -1, int $deref = 0, array $controls = null) {}
/**
* Free result memory
@ -909,7 +945,34 @@ function ldap_dn2ufn(string $dn): string|false {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_add($ldap, string $dn, array $entry): bool {}
function ldap_add($ldap, string $dn, array $entry, array $controls = null): bool {}
/**
* Add entries to LDAP directory
* Does the same thing as ldap_add() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://www.php.net/manual/en/function.ldap-add-ext.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string $dn <p>
* The distinguished name of an LDAP entity.
* </p>
* @param array $entry <p>
* An array that specifies the information about the entry. The values in
* the entries are indexed by individual attributes.
* In case of multiple values for an attribute, they are indexed using
* integers starting with 0.
* <code>
* $entree["attribut1"] = "value";
* $entree["attribut2"][0] = "value1";
* $entree["attribut2"][1] = "value2";
* </code>
* </p>
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_add_ext($ldap, string $dn, array $entry, array $controls = null) {}
/**
* Delete an entry from a directory
@ -923,7 +986,23 @@ function ldap_add($ldap, string $dn, array $entry): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_delete($ldap, string $dn): bool {}
function ldap_delete($ldap, string $dn, array $controls = null): bool {}
/**
* Delete an entry from a directory
* Does the same thing as ldap_delete() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://php.net/manual/en/function.ldap-delete-ext.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string $dn <p>
* The distinguished name of an LDAP entity.
* </p>
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_delete_ext($ldap, string $dn, array $controls = null) {}
/**
* This function is an alias of: ldap_mod_replace().
@ -939,7 +1018,7 @@ function ldap_delete($ldap, string $dn): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_modify($ldap, string $dn, array $entry): bool {}
function ldap_modify($ldap, string $dn, array $entry, array $controls = null): bool {}
/**
* Add attribute values to current attributes
@ -954,7 +1033,24 @@ function ldap_modify($ldap, string $dn, array $entry): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_mod_add($ldap, string $dn, array $entry): bool {}
function ldap_mod_add($ldap, string $dn, array $entry, array $controls = null): bool {}
/**
* Add attribute values to current attributes
* Does the same thing as ldap_mod_add() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://php.net/manual/en/function.ldap-mod-add-ext.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string $dn <p>
* The distinguished name of an LDAP entity.
* </p>
* @param array $entry
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_mod_add_ext($ldap, string $dn, array $entry, array $controls = null) {}
/**
* Replace attribute values with new ones
@ -969,7 +1065,24 @@ function ldap_mod_add($ldap, string $dn, array $entry): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_mod_replace($ldap, string $dn, array $entry): bool {}
function ldap_mod_replace($ldap, string $dn, array $entry, array $controls = null): bool {}
/**
* Replace attribute values with new ones
* Does the same thing as ldap_mod_replace() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://php.net/manual/en/function.ldap-mod-replace-ext.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string $dn <p>
* The distinguished name of an LDAP entity.
* </p>
* @param array $entry
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_mod_replace_ext($ldap, string $dn, array $entry, array $controls = null) {}
/**
* Delete attribute values from current attributes
@ -984,7 +1097,24 @@ function ldap_mod_replace($ldap, string $dn, array $entry): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_mod_del($ldap, string $dn, array $entry): bool {}
function ldap_mod_del($ldap, string $dn, array $entry, array $controls = null): bool {}
/**
* Delete attribute values from current attributes
* Does the same thing as ldap_mod_del() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://php.net/manual/en/function.ldap-mod-del-ext.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string $dn <p>
* The distinguished name of an LDAP entity.
* </p>
* @param array $entry
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_mod_del_ext($ldap, string $dn, array $entry, array $controls = null) {}
/**
* Return the LDAP error number of the last LDAP command
@ -1036,7 +1166,7 @@ function ldap_error($ldap): string {}
* @return int|bool <b>TRUE</b> if <i>value</i> matches otherwise returns
* <b>FALSE</b>. Returns -1 on error.
*/
function ldap_compare($ldap, string $dn, string $attribute, string $value): int|bool {}
function ldap_compare($ldap, string $dn, string $attribute, string $value, array $controls = null): int|bool {}
/**
* Sort LDAP result entries
@ -1079,7 +1209,33 @@ function ldap_sort($ldap, $result, string $sortfilter): bool {}
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
*/
function ldap_rename($ldap, string $dn, string $new_rdn, string $new_parent, bool $delete_old_rdn): bool {}
function ldap_rename($ldap, string $dn, string $new_rdn, string $new_parent, bool $delete_old_rdn, array $controls = null): bool {}
/**
* Modify the name of an entry
* Does the same thing as ldap_rename() but returns the LDAP result resource to be parsed with ldap_parse_result().
* @link https://php.net/manual/en/function.ldap-rename-ext.php
* @param resource $ldap <p>
* An LDAP link identifier, returned by <b>ldap_connect</b>.
* </p>
* @param string $dn <p>
* The distinguished name of an LDAP entity.
* </p>
* @param string $new_rdn <p>
* The new RDN.
* </p>
* @param string $new_parent <p>
* The new parent/superior entry.
* </p>
* @param bool $delete_old_rdn <p>
* If <b>TRUE</b> the old RDN value(s) is removed, else the old RDN value(s)
* is retained as non-distinguished values of the entry.
* </p>
* @param array|null $controls Array of LDAP Controls to send with the request.
* @return resource|false
* @since 7.3
*/
function ldap_rename_ext($ldap, string $dn, string $new_rdn, string $new_parent, bool $delete_old_rdn, array $controls = null) {}
/**
* Get the current value for given option
@ -1294,7 +1450,7 @@ function ldap_parse_reference($ldap, $entry, &$referrals): bool {}
* @param array &$controls An array of LDAP Controls which have been sent with the response.
* @return bool
*/
function ldap_parse_result($ldap, $result, &$error_code, &$matched_dn, &$error_message, &$referrals): bool {}
function ldap_parse_result($ldap, $result, &$error_code, &$matched_dn, &$error_message, &$referrals, &$controls = null): bool {}
/**
* Start TLS
@ -1441,4 +1597,4 @@ function ldap_escape(string $value, string $ignore = '', int $flags = 0): string
* @return bool <b>TRUE</b> on success or <b>FALSE</b> on failure.
* @since 5.4
*/
function ldap_modify_batch($ldap, string $dn, array $modifications_info): bool {}
function ldap_modify_batch($ldap, string $dn, array $modifications_info, array $controls = null): bool {}

View File

@ -25,6 +25,31 @@ define('MB_CASE_LOWER', 1);
define('MB_CASE_TITLE', 2);
/**
* @since 7.3
*/
define('MB_CASE_FOLD', 3);
/**
* @since 7.3
*/
define('MB_CASE_UPPER_SIMPLE', 4);
/**
* @since 7.3
*/
define('MB_CASE_LOWER_SIMPLE', 5);
/**
* @since 7.3
*/
define('MB_CASE_TITLE_SIMPLE', 6);
/**
* @since 7.3
*/
define('MB_CASE_FOLD_SIMPLE', 7);
/**
* Perform case folding on a string
* @link https://php.net/manual/en/function.mb-convert-case.php

View File

@ -1,5 +1,6 @@
<?php
use JetBrains\PhpStorm\ArrayShape;
use JetBrains\PhpStorm\Deprecated;
use JetBrains\PhpStorm\Internal\TentativeType;

View File

@ -1131,6 +1131,15 @@ function openssl_get_cipher_methods(bool $aliases = false): array {}
*/
function openssl_dh_compute_key(string $public_key, $private_key): string|false {}
/**
* @param OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $public_key
* @param OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $private_key
* @param int $key_length
* @return string|false
* @since 7.3
*/
function openssl_pkey_derive($public_key, $private_key, int $key_length = 0): string|false {}
/**
* Generates a string of pseudo-random bytes, with the number of bytes determined by the length parameter.
* <p>It also indicates if a cryptographically strong algorithm was used to produce the pseudo-random bytes,

View File

@ -115,6 +115,21 @@ define('PREG_UNMATCHED_AS_NULL', 512);
*/
define('PCRE_VERSION', "8.31 2012-07-06");
/**
* @since 7.3
*/
define('PCRE_VERSION_MAJOR', 10);
/**
* @since 7.3
*/
define('PCRE_VERSION_MINOR', 40);
/**
* @since 7.3
*/
define('PCRE_JIT_SUPPORT', 1);
/**
* Perform a regular expression match
* @link https://php.net/manual/en/function.preg-match.php

View File

@ -1,7 +1,7 @@
<phpunit bootstrap="vendor/autoload.php"
failOnWarning="true">
<testsuites>
<testsuite name="PHP_7.2">
<testsuite name="PHP_7.3">
<file>tests/BaseClassesTest.php</file>
<file>tests/BaseConstantsTest.php</file>
<file>tests/BaseFunctionsTest.php</file>

View File

@ -332,6 +332,23 @@ function session_cache_limiter(string $value): string {}
*/
function session_cache_expire(int $value): int {}
/**
* Set the session cookie parameters
* @link https://php.net/manual/en/function.session-set-cookie-params.php
* @param array $lifetime_or_options <p>
* An associative array which may have any of the keys lifetime, path, domain,
* secure, httponly and samesite. The values have the same meaning as described
* for the parameters with the same name. The value of the samesite element
* should be either Lax or Strict. If any of the allowed options are not given,
* their default values are the same as the default values of the explicit
* parameters. If the samesite element is omitted, no SameSite cookie attribute
* is set.
* </p>
* @return bool returns true on success or false on failure.
* @since 7.3
*/
function session_set_cookie_params(array $lifetime_or_options): bool {}
/**
* Set the session cookie parameters
* @link https://php.net/manual/en/function.session-set-cookie-params.php

View File

@ -2206,3 +2206,40 @@ function socket_getopt($socket, int $level, int $option): array|int|false {}
* @return bool
*/
function socket_setopt($socket, int $level, int $option, $value): bool {}
/**
* Exports the WSAPROTOCOL_INFO Structure
*
* @link https://www.php.net/manual/en/function.socket-wsaprotocol-info-export.php
*
* @param resource $socket
* @param int $target_pid
* @return string|false
*
* @since 7.3
*/
function socket_wsaprotocol_info_export($socket, $target_pid) {}
/**
* Imports a Socket from another Process
*
* @link https://www.php.net/manual/en/function.socket-wsaprotocol-info-import.php
*
* @param string $info_id
* @return resource|false
*
* @since 7.3
*/
function socket_wsaprotocol_info_import($info_id) {}
/**
* Releases an exported WSAPROTOCOL_INFO Structure
*
* @link https://www.php.net/manual/en/function.socket-wsaprotocol-info-release.php
*
* @param string $info_id
* @return bool
*
* @since 7.3
*/
function socket_wsaprotocol_info_release($info_id) {}

View File

@ -59,6 +59,22 @@ define('PASSWORD_BCRYPT', "2y");
*/
define('PASSWORD_ARGON2I', "argon2i");
/**
* PASSWORD_ARGON2ID is used to create new password hashes using the Argon2id algorithm.
*
* Supported Options:
* <ul>
* <li>memory_cost (integer) - Maximum memory (in bytes) that may be used to compute the Argon2 hash. Defaults to PASSWORD_ARGON2_DEFAULT_MEMORY_COST.</li>
*
* <li>time_cost (integer) - Maximum amount of time it may take to compute the Argon2 hash. Defaults to PASSWORD_ARGON2_DEFAULT_TIME_COST.</li>
*
* <li>threads (integer) - Number of threads to use for computing the Argon2 hash. Defaults to PASSWORD_ARGON2_DEFAULT_THREADS.</li>
* </ul>
* Available as of PHP 7.3.0.
* @since 7.3
*/
define('PASSWORD_ARGON2ID', "argon2id");
/**
* Default amount of memory in bytes that Argon2lib will use while trying to compute a hash.
* Available as of PHP 7.2.0.

View File

@ -349,6 +349,17 @@ function show_source(string $filename, bool $return = false): string|bool {}
*/
function highlight_string(string $string, bool $return = false): string|bool {}
/**
* Get the system's high resolution time
* @link https://secure.php.net/manual/en/function.hrtime.php
* @param bool $as_number <p>Whether the high resolution time should be returned as array or number.<p>
* @since 7.3
* @return int[]|int|float|false Returns an array of integers in the form [seconds, nanoseconds], if the parameter get_as_number is false.
* Otherwise the nanoseconds are returned as integer (64bit platforms) or float (32bit platforms).
*/
#[Pure(true)]
function hrtime(bool $as_number): array|int|float|false {}
/**
* Return source with stripped comments and whitespace
* @link https://php.net/manual/en/function.php-strip-whitespace.php
@ -562,6 +573,29 @@ function restore_include_path() {}
*/
function setcookie(string $name, $value = '', $expires_or_options = 0, $path = '', $domain = '', $secure = false, $httponly = false): bool {}
/**
* Send a cookie
*
* @link https://php.net/manual/en/function.setcookie.php
*
* @param string $name The name of the cookie.
* @param string $value [optional] The value of the cookie. This value is stored on the clients
* computer; do not store sensitive information.
* Assuming the name is 'cookiename', this value is retrieved through $_COOKIE['cookiename']
* @param array $options [optional] An associative array which may have any of the keys expires, path, domain, secure,
* httponly and samesite. The values have the same meaning as described for the parameters with
* the same name. The value of the samesite element should be either Lax or Strict.
* If any of the allowed options are not given, their default values are the same
* as the default values of the explicit parameters. If the samesite element is omitted,
* no SameSite cookie attribute is set.
*
* @return bool If output exists prior to calling this function, setcookie will fail and return false. If
* setcookie successfully runs, it will return true.
* This does not indicate whether the user accepted the cookie.
* @since 7.3
*/
function setcookie(string $name, $value = '', array $options = []): bool {}
/**
* Send a cookie without urlencoding the cookie value
* @link https://php.net/manual/en/function.setrawcookie.php
@ -576,6 +610,29 @@ function setcookie(string $name, $value = '', $expires_or_options = 0, $path = '
*/
function setrawcookie(string $name, $value = '', $expires_or_options = 0, $path = '', $domain = '', $secure = false, $httponly = false): bool {}
/**
* Send a cookie without urlencoding the cookie value
*
* @link https://php.net/manual/en/function.setrawcookie.php
*
* @param string $name The name of the cookie.
* @param string $value [optional] The value of the cookie. This value is stored on the clients
* computer; do not store sensitive information.
* Assuming the name is 'cookiename', this value is retrieved through $_COOKIE['cookiename']
* @param array $options [optional] An associative array which may have any of the keys expires, path, domain, secure,
* httponly and samesite. The values have the same meaning as described for the parameters with
* the same name. The value of the samesite element should be either Lax or Strict.
* If any of the allowed options are not given, their default values are the same
* as the default values of the explicit parameters. If the samesite element is omitted,
* no SameSite cookie attribute is set.
*
* @return bool If output exists prior to calling this function, setcookie will fail and return false. If
* setcookie successfully runs, it will return true.
* This does not indicate whether the user accepted the cookie.
* @since 7.3
*/
function setrawcookie(string $name, $value = '', array $options = []): bool {}
/**
* Send a raw HTTP header
* @link https://php.net/manual/en/function.header.php
@ -783,6 +840,14 @@ function is_uploaded_file(string $filename): bool {}
*/
function move_uploaded_file(string $from, string $to): bool {}
/**
* @return array|false
* @since 7.3
*/
#[Pure]
#[ArrayShape(["description" => "string", "mac" => "string", "mtu" => "int", "unicast" => "array", "up" => "bool"])]
function net_get_interfaces(): array|false {}
/**
* Get the Internet host name corresponding to a given IP address
* @link https://php.net/manual/en/function.gethostbyaddr.php

View File

@ -337,6 +337,17 @@ function is_scalar(mixed $value): bool {}
*/
function is_callable(mixed $value, bool $syntax_only = false, &$callable_name): bool {}
/**
* Verify that the contents of a variable is a countable value
* @link https://secure.php.net/is_countable
*
* @param mixed $value The value to check
* @return bool <b>TRUE</b> if $var is countable, <b>FALSE</b> otherwise.
* @since 7.3
*/
#[Pure]
function is_countable(mixed $value): bool {}
/**
* Closes process file pointer
* @link https://php.net/manual/en/function.pclose.php

View File

@ -720,6 +720,32 @@ function array_combine(array $keys, array $values): array|false {}
#[Pure]
function array_key_exists($key, array|ArrayObject $array): bool {}
/**
* Gets the first key of an array
*
* Get the first key of the given array without affecting the internal array pointer.
*
* @link https://secure.php.net/array_key_first
* @param array $array An array
* @return string|int|null Returns the first key of array if the array is not empty; NULL otherwise.
* @since 7.3
*/
#[Pure]
function array_key_first(array $array): string|int|null {}
/**
* Gets the last key of an array
*
* Get the last key of the given array without affecting the internal array pointer.
*
* @link https://secure.php.net/array_key_last
* @param array $array An array
* @return string|int|null Returns the last key of array if the array is not empty; NULL otherwise.
* @since 7.3
*/
#[Pure]
function array_key_last(array $array): string|int|null {}
/**
* Alias:
* {@see current}