* * @param TArray $arr * @param mixed $search_value * @param bool $strict * * @return (TArray is non-empty-array ? non-empty-list : list) * @psalm-pure */ function array_keys(array $arr, $search_value = null, bool $strict = false) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array $arr2 * @param array ...$arr3 * * @return array * @psalm-pure */ function array_intersect(array $arr, array $arr2, array ...$arr3) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array $arr2 * @param array ...$arr3 * * @return array * @psalm-pure */ function array_intersect_key(array $arr, array $arr2, array ...$arr3) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * * @return array * @psalm-pure */ function array_intersect_assoc(array $arr, array $arr2, array ...$arr3) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array $arr2 * * @return array|false * @psalm-ignore-falsable-return * @psalm-pure */ function array_combine(array $arr, array $arr2) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array $arr2 * @param array ...$arr3 * * @return array * @psalm-pure */ function array_diff(array $arr, array $arr2, array ...$arr3) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array $arr2 * @param array ...$arr3 * * @return array * @psalm-pure */ function array_diff_key(array $arr, array $arr2, array ...$arr3) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array $arr2 * @param array ...$arr3 * * @return array * @psalm-pure */ function array_diff_assoc(array $arr, array $arr2, array ...$arr3) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * * @return array * @psalm-pure */ function array_flip(array $arr) { } /** * @psalm-template TKey as array-key * * @param array $arr * * @return TKey|null * @psalm-ignore-nullable-return * @psalm-pure */ function key($arr) { } /** * @psalm-template TKey as array-key * * @param array $arr * * @return TKey|null * @psalm-ignore-nullable-return * @psalm-pure */ function array_key_first($arr) { } /** * @psalm-template TKey as array-key * * @param array $arr * * @return TKey|null * @psalm-ignore-nullable-return * @psalm-pure */ function array_key_last($arr) { } /** * @psalm-template T * * @param mixed $needle * @param array $haystack * @param bool $strict * * @return T|false * @psalm-pure */ function array_search($needle, array $haystack, bool $strict = false) { } /** * @psalm-template T * * @param T[] $arr * @param-out list $arr */ function shuffle(array &$arr): bool { } /** * @psalm-template T * * @param T[] $arr * @param-out list $arr */ function sort(array &$arr, int $sort_flags = SORT_REGULAR): bool { } /** * @psalm-template T * * @param T[] $arr * @param-out list $arr */ function rsort(array &$arr, int $sort_flags = SORT_REGULAR): bool { } /** * @psalm-template T * * @param T[] $arr * @param callable(T,T):int $callback * @param-out list $arr */ function usort(array &$arr, callable $callback): bool { } /** * @psalm-template TKey * @psalm-template T * * @param array $arr * @param callable(T,T):int $callback * @param-out array $arr */ function uasort(array &$arr, callable $callback): bool { } /** * @psalm-template TKey * @psalm-template T * * @param array $arr * @param callable(TKey,TKey):int $callback * @param-out array $arr */ function uksort(array &$arr, callable $callback): bool { } /** * @psalm-template K of array-key * @psalm-template T * * @param array $arr * * @return array * @psalm-pure */ function array_change_key_case(array $arr, int $case = CASE_LOWER) { } /** * @psalm-template TKey as array-key * * @param TKey $key * @param array $search * * @return bool * @psalm-pure */ function array_key_exists($key, array $search) : bool { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $arr * @param array ...$arr2 * * @return array * @psalm-pure */ function array_merge_recursive(array $arr, array ...$arr2) { } /** * @psalm-template TKey as array-key * @psalm-template TValue * * @param array $keys * @param TValue $value * * @return array * @psalm-pure */ function array_fill_keys(array $keys, $value): array { } /** * @psalm-template TKey * * @param string $pattern * @param array $input * @param 0|1 $flags 1=PREG_GREP_INVERT * @return array */ function preg_grep($pattern, array $input, $flags = 0) { } /** * @param resource $handle * @param-out closed-resource $handle */ function fclose(&$handle) : bool { } /** * @param string $reference * @param-out null $reference */ function sodium_memzero(string &$reference): void { } /** * @param mixed $var * @param bool $return * @return ($return is true ? string : void) */ function var_export($var, bool $return = false) {} /** * @param mixed $var * @param bool $return * @return ($return is true ? string : true) */ function print_r($var, bool $return = false) {} /** * @param mixed $var * @return ($return is true ? string : bool) */ function highlight_file($var, bool $return = false) {} /** * @param mixed $var * @return ($return is true ? string : bool) */ function highlight_string($var, bool $return = false) {} /** * @return ($get_as_float is true ? float : string) */ function microtime(bool $get_as_float = false) {} /** * @return ($return_float is true ? float : array) */ function gettimeofday(bool $return_float = false) {} /** * @param numeric $number * @return ($number is int ? int : ($number is float ? float : int|float)) */ function abs($number) {} /** * @template T as string|int|float * @template TStep as int|float * @param T $start * @param T $end * @param TStep $step * @return ( * T is int * ? (TStep is int ? list : list) * : ( * T is float * ? list * : ( * T is string * ? list * : ( * T is int|float * ? list * : list * ) * ) * ) * ) */ function range($start, $end, $step = 1) {} /** * @return ( * $format is 'd'|'j'|'N'|'w'|'z'|'W'|'m'|'n'|'t'|'L'|'o'|'Y'|'y'|'B'|'g'|'G'|'h'|'H'|'i'|'s'|'u'|'v'|'Z'|'U'|'I' * ? numeric-string * : ($timestamp is numeric ? string : string|false) * ) */ function date(string $format, int $timestamp = 0) {} /** * @param mixed $vars * @param-out string|int|float $vars * @return (func_num_args() is 2 ? list : int) */ function sscanf(string $str, string $format, &...$vars) {} /** * @return ( * func_num_args() is 1 * ? array{dirname: string, basename: string, extension?: string, filename: string} * : string * ) */ function pathinfo(string $path, int $options = \PATHINFO_DIRNAME) {} /** * @template T as scalar * @template TFirstArg as array|T * * @param TFirstArg $arg_1 * @param T $arg_2 * * @return T */ function min($arg_1, ...$arg_2) {} /** * @template T as scalar * @template TFirstArg as array|T * * @param TFirstArg $arg_1 * @param T $arg_2 * * @return T */ function max($arg_1, ...$arg_2) {} /** * @return (func_num_args() is 0 ? array : string|false) */ function getenv(string $varname = '', bool $local_only = false) {} /** * @return ( * $str is non-empty-string ? non-empty-lowercase-string : lowercase-string * ) */ function strtolower(string $str) : string {} /** * @param string|array $glue * * @return ( * $glue is non-empty-string * ? ($pieces is non-empty-array * ? non-empty-string * : string) * : string * ) */ function implode($glue, array $pieces = []) : string {} /** * @param array $input * * @return ( * $input is array * ? int * : ($input is array * ? float * : float|int * ) * ) */ function array_sum(array $input) {}