1<?php
2
3/** @generate-class-entries */
4
5/* array.c */
6
7/**
8 * @var int
9 * @cvalue PHP_EXTR_OVERWRITE
10 */
11const EXTR_OVERWRITE = UNKNOWN;
12/**
13 * @var int
14 * @cvalue PHP_EXTR_SKIP
15 */
16const EXTR_SKIP = UNKNOWN;
17/**
18 * @var int
19 * @cvalue PHP_EXTR_PREFIX_SAME
20 */
21const EXTR_PREFIX_SAME = UNKNOWN;
22/**
23 * @var int
24 * @cvalue PHP_EXTR_PREFIX_ALL
25 */
26const EXTR_PREFIX_ALL = UNKNOWN;
27/**
28 * @var int
29 * @cvalue PHP_EXTR_PREFIX_INVALID
30 */
31const EXTR_PREFIX_INVALID = UNKNOWN;
32/**
33 * @var int
34 * @cvalue PHP_EXTR_PREFIX_IF_EXISTS
35 */
36const EXTR_PREFIX_IF_EXISTS = UNKNOWN;
37/**
38 * @var int
39 * @cvalue PHP_EXTR_IF_EXISTS
40 */
41const EXTR_IF_EXISTS = UNKNOWN;
42/**
43 * @var int
44 * @cvalue PHP_EXTR_REFS
45 */
46const EXTR_REFS = UNKNOWN;
47
48/**
49 * @var int
50 * @cvalue PHP_SORT_ASC
51 */
52const SORT_ASC = UNKNOWN;
53/**
54 * @var int
55 * @cvalue PHP_SORT_DESC
56 */
57const SORT_DESC = UNKNOWN;
58
59/**
60 * @var int
61 * @cvalue PHP_SORT_REGULAR
62 */
63const SORT_REGULAR = UNKNOWN;
64/**
65 * @var int
66 * @cvalue PHP_SORT_NUMERIC
67 */
68const SORT_NUMERIC = UNKNOWN;
69/**
70 * @var int
71 * @cvalue PHP_SORT_STRING
72 */
73const SORT_STRING = UNKNOWN;
74/**
75 * @var int
76 * @cvalue PHP_SORT_LOCALE_STRING
77 */
78const SORT_LOCALE_STRING = UNKNOWN;
79/**
80 * @var int
81 * @cvalue PHP_SORT_NATURAL
82 */
83const SORT_NATURAL = UNKNOWN;
84/**
85 * @var int
86 * @cvalue PHP_SORT_FLAG_CASE
87 */
88const SORT_FLAG_CASE = UNKNOWN;
89
90/**
91 * @var int
92 * @cvalue PHP_CASE_LOWER
93 */
94const CASE_LOWER = UNKNOWN;
95/**
96 * @var int
97 * @cvalue PHP_CASE_UPPER
98 */
99const CASE_UPPER = UNKNOWN;
100
101/**
102 * @var int
103 * @cvalue PHP_COUNT_NORMAL
104 */
105const COUNT_NORMAL = UNKNOWN;
106/**
107 * @var int
108 * @cvalue PHP_COUNT_RECURSIVE
109 */
110const COUNT_RECURSIVE = UNKNOWN;
111
112/**
113 * @var int
114 * @cvalue ARRAY_FILTER_USE_BOTH
115 */
116const ARRAY_FILTER_USE_BOTH = UNKNOWN;
117/**
118 * @var int
119 * @cvalue ARRAY_FILTER_USE_KEY
120 */
121const ARRAY_FILTER_USE_KEY = UNKNOWN;
122
123/* assert.c */
124
125/**
126 * @var int
127 * @deprecated
128 * @cvalue PHP_ASSERT_ACTIVE
129 */
130const ASSERT_ACTIVE = UNKNOWN;
131/**
132 * @var int
133 * @deprecated
134 * @cvalue PHP_ASSERT_CALLBACK
135 */
136const ASSERT_CALLBACK = UNKNOWN;
137/**
138 * @var int
139 * @deprecated
140 * @cvalue PHP_ASSERT_BAIL
141 */
142const ASSERT_BAIL = UNKNOWN;
143/**
144 * @var int
145 * @deprecated
146 * @cvalue PHP_ASSERT_WARNING
147 */
148const ASSERT_WARNING = UNKNOWN;
149/**
150 * @var int
151 * @deprecated
152 * @cvalue PHP_ASSERT_EXCEPTION
153 */
154const ASSERT_EXCEPTION = UNKNOWN;
155
156/* basic_functions.h */
157
158/**
159 * @var int
160 * @cvalue PHP_CONNECTION_ABORTED
161 */
162const CONNECTION_ABORTED = UNKNOWN;
163/**
164 * @var int
165 * @cvalue PHP_CONNECTION_NORMAL
166 */
167const CONNECTION_NORMAL = UNKNOWN;
168/**
169 * @var int
170 * @cvalue PHP_CONNECTION_TIMEOUT
171 */
172const CONNECTION_TIMEOUT = UNKNOWN;
173
174/**
175 * @var int
176 * @cvalue ZEND_INI_USER
177 */
178const INI_USER = UNKNOWN;
179/**
180 * @var int
181 * @cvalue ZEND_INI_PERDIR
182 */
183const INI_PERDIR = UNKNOWN;
184/**
185 * @var int
186 * @cvalue ZEND_INI_SYSTEM
187 */
188const INI_SYSTEM = UNKNOWN;
189/**
190 * @var int
191 * @cvalue ZEND_INI_ALL
192 */
193const INI_ALL = UNKNOWN;
194
195/**
196 * @var int
197 * @cvalue ZEND_INI_SCANNER_NORMAL
198 */
199const INI_SCANNER_NORMAL = UNKNOWN;
200/**
201 * @var int
202 * @cvalue ZEND_INI_SCANNER_RAW
203 */
204const INI_SCANNER_RAW = UNKNOWN;
205/**
206 * @var int
207 * @cvalue ZEND_INI_SCANNER_TYPED
208 */
209const INI_SCANNER_TYPED = UNKNOWN;
210
211/**
212 * @var int
213 * @cvalue PHP_URL_SCHEME
214 */
215const PHP_URL_SCHEME = UNKNOWN;
216/**
217 * @var int
218 * @cvalue PHP_URL_HOST
219 */
220const PHP_URL_HOST = UNKNOWN;
221/**
222 * @var int
223 * @cvalue PHP_URL_PORT
224 */
225const PHP_URL_PORT = UNKNOWN;
226/**
227 * @var int
228 * @cvalue PHP_URL_USER
229 */
230const PHP_URL_USER = UNKNOWN;
231/**
232 * @var int
233 * @cvalue PHP_URL_PASS
234 */
235const PHP_URL_PASS = UNKNOWN;
236/**
237 * @var int
238 * @cvalue PHP_URL_PATH
239 */
240const PHP_URL_PATH = UNKNOWN;
241/**
242 * @var int
243 * @cvalue PHP_URL_QUERY
244 */
245const PHP_URL_QUERY = UNKNOWN;
246/**
247 * @var int
248 * @cvalue PHP_URL_FRAGMENT
249 */
250const PHP_URL_FRAGMENT = UNKNOWN;
251/**
252 * @var int
253 * @cvalue PHP_QUERY_RFC1738
254 */
255const PHP_QUERY_RFC1738 = UNKNOWN;
256/**
257 * @var int
258 * @cvalue PHP_QUERY_RFC3986
259 */
260const PHP_QUERY_RFC3986 = UNKNOWN;
261
262/**
263 * @var float
264 * @cvalue M_E
265 */
266const M_E = 2.718281828459045;
267/**
268 * @var float
269 * @cvalue M_LOG2E
270 */
271const M_LOG2E = 1.4426950408889634074;
272/**
273 * @var float
274 * @cvalue M_LOG10E
275 */
276const M_LOG10E = 0.43429448190325182765;
277/**
278 * @var float
279 * @cvalue M_LN2
280 */
281const M_LN2 = 0.69314718055994530942;
282/**
283 * @var float
284 * @cvalue M_LN10
285 */
286const M_LN10 = 2.30258509299404568402;
287/**
288 * @var float
289 * @cvalue M_PI
290 */
291const M_PI = 3.14159265358979323846;
292/**
293 * @var float
294 * @cvalue M_PI_2
295 */
296const M_PI_2 = 1.57079632679489661923;
297/**
298 * @var float
299 * @cvalue M_PI_4
300 */
301const M_PI_4 = 0.78539816339744830962;
302/**
303 * @var float
304 * @cvalue M_1_PI
305 */
306const M_1_PI = 0.31830988618379067154;
307/**
308 * @var float
309 * @cvalue M_2_PI
310 */
311const M_2_PI = 0.63661977236758134308;
312/**
313 * @var float
314 * @cvalue M_SQRTPI
315 */
316const M_SQRTPI = 1.77245385090551602729;
317/**
318 * @var float
319 * @cvalue M_2_SQRTPI
320 */
321const M_2_SQRTPI = 1.12837916709551257390;
322/**
323 * @var float
324 * @cvalue M_LNPI
325 */
326const M_LNPI = 1.14472988584940017414;
327/**
328 * @var float
329 * @cvalue M_EULER
330 */
331const M_EULER = 0.57721566490153286061;
332/**
333 * @var float
334 * @cvalue M_SQRT2
335 */
336const M_SQRT2 = 1.41421356237309504880;
337/**
338 * @var float
339 * @cvalue M_SQRT1_2
340 */
341const M_SQRT1_2 = 0.70710678118654752440;
342/**
343 * @var float
344 * @cvalue M_SQRT3
345 */
346const M_SQRT3 = 1.73205080756887729352;
347/**
348 * @var float
349 * @cvalue ZEND_INFINITY
350 */
351const INF = UNKNOWN;
352/**
353 * @var float
354 * @cvalue ZEND_NAN
355 */
356const NAN = UNKNOWN;
357
358/**
359 * @var int
360 * @cvalue PHP_ROUND_HALF_UP
361 */
362const PHP_ROUND_HALF_UP = UNKNOWN;
363/**
364 * @var int
365 * @cvalue PHP_ROUND_HALF_DOWN
366 */
367const PHP_ROUND_HALF_DOWN = UNKNOWN;
368/**
369 * @var int
370 * @cvalue PHP_ROUND_HALF_EVEN
371 */
372const PHP_ROUND_HALF_EVEN = UNKNOWN;
373/**
374 * @var int
375 * @cvalue PHP_ROUND_HALF_ODD
376 */
377const PHP_ROUND_HALF_ODD = UNKNOWN;
378/**
379 * @var int
380 * @cvalue PHP_ROUND_CEILING
381 */
382const PHP_ROUND_CEILING = UNKNOWN;
383/**
384 * @var int
385 * @cvalue PHP_ROUND_FLOOR
386 */
387const PHP_ROUND_FLOOR = UNKNOWN;
388/**
389 * @var int
390 * @cvalue PHP_ROUND_TOWARD_ZERO
391 */
392const PHP_ROUND_TOWARD_ZERO = UNKNOWN;
393/**
394 * @var int
395 * @cvalue PHP_ROUND_AWAY_FROM_ZERO
396 */
397const PHP_ROUND_AWAY_FROM_ZERO = UNKNOWN;
398
399/* crypt.c */
400
401/**
402 * @var int
403 * @cvalue PHP_MAX_SALT_LEN
404 */
405const CRYPT_SALT_LENGTH = UNKNOWN;
406/** @var int */
407const CRYPT_STD_DES = 1;
408/** @var int */
409const CRYPT_EXT_DES = 1;
410/** @var int */
411const CRYPT_MD5 = 1;
412/** @var int */
413const CRYPT_BLOWFISH = 1;
414/** @var int */
415const CRYPT_SHA256 = 1;
416/** @var int */
417const CRYPT_SHA512 = 1;
418
419/* dns.c */
420
421#if (defined(PHP_WIN32) || (defined(HAVE_DNS_SEARCH_FUNC) && defined(HAVE_FULL_DNS_FUNCS)))
422/**
423 * @var int
424 * @cvalue PHP_DNS_A
425 */
426const DNS_A = UNKNOWN;
427/**
428 * @var int
429 * @cvalue PHP_DNS_NS
430 */
431const DNS_NS = UNKNOWN;
432/**
433 * @var int
434 * @cvalue PHP_DNS_CNAME
435 */
436const DNS_CNAME = UNKNOWN;
437/**
438 * @var int
439 * @cvalue PHP_DNS_SOA
440 */
441const DNS_SOA = UNKNOWN;
442/**
443 * @var int
444 * @cvalue PHP_DNS_PTR
445 */
446const DNS_PTR = UNKNOWN;
447/**
448 * @var int
449 * @cvalue PHP_DNS_HINFO
450 */
451const DNS_HINFO = UNKNOWN;
452#if (!defined(PHP_WIN32))
453/**
454 * @var int
455 * @cvalue PHP_DNS_CAA
456 */
457const DNS_CAA = UNKNOWN;
458#endif
459/**
460 * @var int
461 * @cvalue PHP_DNS_MX
462 */
463const DNS_MX = UNKNOWN;
464/**
465 * @var int
466 * @cvalue PHP_DNS_TXT
467 */
468const DNS_TXT = UNKNOWN;
469/**
470 * @var int
471 * @cvalue PHP_DNS_SRV
472 */
473const DNS_SRV = UNKNOWN;
474/**
475 * @var int
476 * @cvalue PHP_DNS_NAPTR
477 */
478const DNS_NAPTR = UNKNOWN;
479/**
480 * @var int
481 * @cvalue PHP_DNS_AAAA
482 */
483const DNS_AAAA = UNKNOWN;
484/**
485 * @var int
486 * @cvalue PHP_DNS_A6
487 */
488const DNS_A6 = UNKNOWN;
489/**
490 * @var int
491 * @cvalue PHP_DNS_ANY
492 */
493const DNS_ANY = UNKNOWN;
494/**
495 * @var int
496 * @cvalue PHP_DNS_ALL
497 */
498const DNS_ALL = UNKNOWN;
499#endif
500
501/* html.c */
502
503/**
504* @var int
505* @cvalue PHP_HTML_SPECIALCHARS
506*/
507const HTML_SPECIALCHARS = UNKNOWN;
508/**
509* @var int
510* @cvalue PHP_HTML_ENTITIES
511*/
512const HTML_ENTITIES = UNKNOWN;
513/**
514* @var int
515* @cvalue ENT_COMPAT
516*/
517const ENT_COMPAT = UNKNOWN;
518/**
519* @var int
520* @cvalue ENT_QUOTES
521*/
522const ENT_QUOTES = UNKNOWN;
523/**
524* @var int
525* @cvalue ENT_NOQUOTES
526*/
527const ENT_NOQUOTES = UNKNOWN;
528/**
529* @var int
530* @cvalue ENT_IGNORE
531*/
532const ENT_IGNORE = UNKNOWN;
533/**
534* @var int
535* @cvalue ENT_SUBSTITUTE
536*/
537const ENT_SUBSTITUTE = UNKNOWN;
538/**
539* @var int
540* @cvalue ENT_DISALLOWED
541*/
542const ENT_DISALLOWED = UNKNOWN;
543/**
544* @var int
545* @cvalue ENT_HTML401
546*/
547const ENT_HTML401 = UNKNOWN;
548/**
549* @var int
550* @cvalue ENT_XML1
551*/
552const ENT_XML1 = UNKNOWN;
553/**
554* @var int
555* @cvalue ENT_XHTML
556*/
557const ENT_XHTML = UNKNOWN;
558/**
559* @var int
560* @cvalue ENT_HTML5
561*/
562const ENT_HTML5 = UNKNOWN;
563
564/* image.c */
565
566/**
567 * @var int
568 * @cvalue IMAGE_FILETYPE_GIF
569 */
570const IMAGETYPE_GIF = UNKNOWN;
571/**
572 * @var int
573 * @cvalue IMAGE_FILETYPE_JPEG
574 */
575const IMAGETYPE_JPEG = UNKNOWN;
576/**
577 * @var int
578 * @cvalue IMAGE_FILETYPE_PNG
579 */
580const IMAGETYPE_PNG = UNKNOWN;
581/**
582 * @var int
583 * @cvalue IMAGE_FILETYPE_SWF
584 */
585const IMAGETYPE_SWF = UNKNOWN;
586/**
587 * @var int
588 * @cvalue IMAGE_FILETYPE_PSD
589 */
590const IMAGETYPE_PSD = UNKNOWN;
591/**
592 * @var int
593 * @cvalue IMAGE_FILETYPE_BMP
594 */
595const IMAGETYPE_BMP = UNKNOWN;
596/**
597 * @var int
598 * @cvalue IMAGE_FILETYPE_TIFF_II
599 */
600const IMAGETYPE_TIFF_II = UNKNOWN;
601/**
602 * @var int
603 * @cvalue IMAGE_FILETYPE_TIFF_MM
604 */
605const IMAGETYPE_TIFF_MM = UNKNOWN;
606/**
607 * @var int
608 * @cvalue IMAGE_FILETYPE_JPC
609 */
610const IMAGETYPE_JPC = UNKNOWN;
611/**
612 * @var int
613 * @cvalue IMAGE_FILETYPE_JP2
614 */
615const IMAGETYPE_JP2 = UNKNOWN;
616/**
617 * @var int
618 * @cvalue IMAGE_FILETYPE_JPX
619 */
620const IMAGETYPE_JPX = UNKNOWN;
621/**
622 * @var int
623 * @cvalue IMAGE_FILETYPE_JB2
624 */
625const IMAGETYPE_JB2 = UNKNOWN;
626#if (defined(HAVE_ZLIB) && !defined(COMPILE_DL_ZLIB))
627/**
628 * @var int
629 * @cvalue IMAGE_FILETYPE_SWC
630 */
631const IMAGETYPE_SWC = UNKNOWN;
632#endif
633/**
634 * @var int
635 * @cvalue IMAGE_FILETYPE_IFF
636 */
637const IMAGETYPE_IFF = UNKNOWN;
638/**
639 * @var int
640 * @cvalue IMAGE_FILETYPE_WBMP
641 */
642const IMAGETYPE_WBMP = UNKNOWN;
643/* keep alias */
644/**
645 * @var int
646 * @cvalue IMAGE_FILETYPE_JPC
647 */
648const IMAGETYPE_JPEG2000 = UNKNOWN;
649/**
650 * @var int
651 * @cvalue IMAGE_FILETYPE_XBM
652 */
653const IMAGETYPE_XBM = UNKNOWN;
654/**
655 * @var int
656 * @cvalue IMAGE_FILETYPE_ICO
657 */
658const IMAGETYPE_ICO = UNKNOWN;
659/**
660 * @var int
661 * @cvalue IMAGE_FILETYPE_WEBP
662 */
663const IMAGETYPE_WEBP = UNKNOWN;
664/**
665 * @var int
666 * @cvalue IMAGE_FILETYPE_AVIF
667 */
668const IMAGETYPE_AVIF = UNKNOWN;
669/**
670 * @var int
671 * @cvalue IMAGE_FILETYPE_UNKNOWN
672 */
673const IMAGETYPE_UNKNOWN = UNKNOWN;
674/**
675 * @var int
676 * @cvalue IMAGE_FILETYPE_COUNT
677 */
678const IMAGETYPE_COUNT = UNKNOWN;
679
680/* info.c */
681
682/**
683 * @var int
684 * @cvalue PHP_INFO_GENERAL
685 */
686const INFO_GENERAL = UNKNOWN;
687/**
688* @var int
689* @cvalue PHP_INFO_CREDITS
690*/
691const INFO_CREDITS = UNKNOWN;
692/**
693* @var int
694* @cvalue PHP_INFO_CONFIGURATION
695*/
696const INFO_CONFIGURATION = UNKNOWN;
697/**
698* @var int
699* @cvalue PHP_INFO_MODULES
700*/
701const INFO_MODULES = UNKNOWN;
702/**
703* @var int
704* @cvalue PHP_INFO_ENVIRONMENT
705*/
706const INFO_ENVIRONMENT = UNKNOWN;
707/**
708* @var int
709* @cvalue PHP_INFO_VARIABLES
710*/
711const INFO_VARIABLES = UNKNOWN;
712/**
713* @var int
714* @cvalue PHP_INFO_LICENSE
715*/
716const INFO_LICENSE = UNKNOWN;
717/**
718* @var int
719* @cvalue PHP_INFO_ALL
720*/
721const INFO_ALL = UNKNOWN;
722/**
723* @var int
724* @cvalue PHP_CREDITS_GROUP
725*/
726const CREDITS_GROUP = UNKNOWN;
727/**
728* @var int
729* @cvalue PHP_CREDITS_GENERAL
730*/
731const CREDITS_GENERAL = UNKNOWN;
732/**
733* @var int
734* @cvalue PHP_CREDITS_SAPI
735*/
736const CREDITS_SAPI = UNKNOWN;
737/**
738* @var int
739* @cvalue PHP_CREDITS_MODULES
740*/
741const CREDITS_MODULES = UNKNOWN;
742/**
743* @var int
744* @cvalue PHP_CREDITS_DOCS
745*/
746const CREDITS_DOCS = UNKNOWN;
747/**
748* @var int
749* @cvalue PHP_CREDITS_FULLPAGE
750*/
751const CREDITS_FULLPAGE = UNKNOWN;
752/**
753* @var int
754* @cvalue PHP_CREDITS_QA
755*/
756const CREDITS_QA = UNKNOWN;
757/**
758* @var int
759* @cvalue PHP_CREDITS_ALL
760*/
761const CREDITS_ALL = UNKNOWN;
762
763/* syslog.c */
764
765/* error levels */
766
767/**
768 * system unusable
769 * @var int
770 * @cvalue LOG_EMERG
771 */
772const LOG_EMERG = UNKNOWN;
773/**
774 * immediate action required
775 * @var int
776 * @cvalue LOG_ALERT
777 */
778const LOG_ALERT = UNKNOWN;
779/**
780 * critical conditions
781 * @var int
782 * @cvalue LOG_CRIT
783 */
784const LOG_CRIT = UNKNOWN;
785/**
786 * @var int
787 * @cvalue LOG_ERR
788 */
789const LOG_ERR = UNKNOWN;
790/**
791 * @var int
792 * @cvalue LOG_WARNING
793 */
794const LOG_WARNING = UNKNOWN;
795/**
796 * @var int
797 * @cvalue LOG_NOTICE
798 */
799const LOG_NOTICE = UNKNOWN;
800/**
801 * @var int
802 * @cvalue LOG_INFO
803 */
804const LOG_INFO = UNKNOWN;
805/**
806 * @var int
807 * @cvalue LOG_DEBUG
808 */
809const LOG_DEBUG = UNKNOWN;
810/* facility: type of program logging the message */
811/**
812 * @var int
813 * @cvalue LOG_KERN
814 */
815const LOG_KERN = UNKNOWN;
816/**
817 * generic user level
818 * @var int
819 * @cvalue LOG_USER
820 */
821const LOG_USER = UNKNOWN;
822/**
823 * log to email
824 * @var int
825 * @cvalue LOG_MAIL
826 */
827const LOG_MAIL = UNKNOWN;
828/**
829 * other system daemons
830 * @var int
831 * @cvalue LOG_DAEMON
832 */
833const LOG_DAEMON = UNKNOWN;
834/**
835 * @var int
836 * @cvalue LOG_AUTH
837 */
838const LOG_AUTH = UNKNOWN;
839/**
840 * @var int
841 * @cvalue LOG_SYSLOG
842 */
843const LOG_SYSLOG = UNKNOWN;
844/**
845 * @var int
846 * @cvalue LOG_LPR
847 */
848const LOG_LPR = UNKNOWN;
849#ifdef LOG_NEWS
850/* No LOG_NEWS on HP-UX */
851/**
852 * usenet new
853 * @var int
854 * @cvalue LOG_NEWS
855 */
856const LOG_NEWS = UNKNOWN;
857#endif
858#ifdef LOG_UUCP
859/* No LOG_UUCP on HP-UX */
860/**
861 * @var int
862 * @cvalue LOG_UUCP
863 */
864const LOG_UUCP = UNKNOWN;
865#endif
866#ifdef LOG_CRON
867/* apparently some systems don't have this one */
868/**
869 * @var int
870 * @cvalue LOG_CRON
871 */
872const LOG_CRON = UNKNOWN;
873#endif
874#ifdef LOG_AUTHPRIV
875/* AIX doesn't have LOG_AUTHPRIV */
876/**
877 * @var int
878 * @cvalue LOG_AUTHPRIV
879 */
880const LOG_AUTHPRIV = UNKNOWN;
881#endif
882#ifndef PHP_WIN32
883/**
884 * @var int
885 * @cvalue LOG_LOCAL0
886 */
887const LOG_LOCAL0 = UNKNOWN;
888/**
889 * @var int
890 * @cvalue LOG_LOCAL1
891 */
892const LOG_LOCAL1 = UNKNOWN;
893/**
894 * @var int
895 * @cvalue LOG_LOCAL2
896 */
897const LOG_LOCAL2 = UNKNOWN;
898/**
899 * @var int
900 * @cvalue LOG_LOCAL3
901 */
902const LOG_LOCAL3 = UNKNOWN;
903/**
904 * @var int
905 * @cvalue LOG_LOCAL4
906 */
907const LOG_LOCAL4 = UNKNOWN;
908/**
909 * @var int
910 * @cvalue LOG_LOCAL5
911 */
912const LOG_LOCAL5 = UNKNOWN;
913/**
914 * @var int
915 * @cvalue LOG_LOCAL6
916 */
917const LOG_LOCAL6 = UNKNOWN;
918/**
919 * @var int
920 * @cvalue LOG_LOCAL7
921 */
922const LOG_LOCAL7 = UNKNOWN;
923#endif
924/* options */
925/**
926 * @var int
927 * @cvalue LOG_PID
928 */
929const LOG_PID = UNKNOWN;
930/**
931 * @var int
932 * @cvalue LOG_CONS
933 */
934const LOG_CONS = UNKNOWN;
935/**
936 * @var int
937 * @cvalue LOG_ODELAY
938 */
939const LOG_ODELAY = UNKNOWN;
940/**
941 * @var int
942 * @cvalue LOG_NDELAY
943 */
944const LOG_NDELAY = UNKNOWN;
945#ifdef LOG_NOWAIT
946/**
947 * @var int
948 * @cvalue LOG_NOWAIT
949 */
950const LOG_NOWAIT = UNKNOWN;
951#endif
952#ifdef LOG_PERROR
953/* AIX doesn't have LOG_PERROR */
954/**
955 * log to stderr
956 * @var int
957 * @cvalue LOG_PERROR
958 */
959const LOG_PERROR = UNKNOWN;
960#endif
961
962/* string.c */
963
964/**
965 * @var int
966 * @cvalue PHP_STR_PAD_LEFT
967 */
968const STR_PAD_LEFT = UNKNOWN;
969/**
970 * @var int
971 * @cvalue PHP_STR_PAD_RIGHT
972 */
973const STR_PAD_RIGHT = UNKNOWN;
974/**
975 * @var int
976 * @cvalue PHP_STR_PAD_BOTH
977 */
978const STR_PAD_BOTH = UNKNOWN;
979/**
980 * @var int
981 * @cvalue PHP_PATHINFO_DIRNAME
982 */
983const PATHINFO_DIRNAME = UNKNOWN;
984/**
985 * @var int
986 * @cvalue PHP_PATHINFO_BASENAME
987 */
988const PATHINFO_BASENAME = UNKNOWN;
989/**
990 * @var int
991 * @cvalue PHP_PATHINFO_EXTENSION
992 */
993const PATHINFO_EXTENSION = UNKNOWN;
994/**
995 * @var int
996 * @cvalue PHP_PATHINFO_FILENAME
997 */
998const PATHINFO_FILENAME = UNKNOWN;
999/**
1000 * @var int
1001 * @cvalue PHP_PATHINFO_ALL
1002 */
1003const PATHINFO_ALL = UNKNOWN;
1004
1005/**
1006 * If last members of struct lconv equal CHAR_MAX, no grouping is done
1007 * @var int
1008 * @cvalue CHAR_MAX
1009 */
1010const CHAR_MAX = UNKNOWN;
1011/**
1012 * @var int
1013 * @cvalue LC_CTYPE
1014 */
1015const LC_CTYPE = UNKNOWN;
1016/**
1017 * @var int
1018 * @cvalue LC_NUMERIC
1019 */
1020const LC_NUMERIC = UNKNOWN;
1021/**
1022 * @var int
1023 * @cvalue LC_TIME
1024 */
1025const LC_TIME = UNKNOWN;
1026/**
1027 * @var int
1028 * @cvalue LC_COLLATE
1029 */
1030const LC_COLLATE = UNKNOWN;
1031/**
1032 * @var int
1033 * @cvalue LC_MONETARY
1034 */
1035const LC_MONETARY = UNKNOWN;
1036/**
1037 * @var int
1038 * @cvalue LC_ALL
1039 */
1040const LC_ALL = UNKNOWN;
1041#ifdef LC_MESSAGES
1042/**
1043 * @var int
1044 * @cvalue LC_MESSAGES
1045 */
1046const LC_MESSAGES = UNKNOWN;
1047#endif
1048
1049#ifdef HAVE_NL_LANGINFO
1050#ifdef ABDAY_1
1051/**
1052 * @var int
1053 * @cvalue ABDAY_1
1054 */
1055const ABDAY_1 = UNKNOWN;
1056/**
1057 * @var int
1058 * @cvalue ABDAY_2
1059 */
1060const ABDAY_2 = UNKNOWN;
1061/**
1062 * @var int
1063 * @cvalue ABDAY_3
1064 */
1065const ABDAY_3 = UNKNOWN;
1066/**
1067 * @var int
1068 * @cvalue ABDAY_4
1069 */
1070const ABDAY_4 = UNKNOWN;
1071/**
1072 * @var int
1073 * @cvalue ABDAY_5
1074 */
1075const ABDAY_5 = UNKNOWN;
1076/**
1077 * @var int
1078 * @cvalue ABDAY_6
1079 */
1080const ABDAY_6 = UNKNOWN;
1081/**
1082 * @var int
1083 * @cvalue ABDAY_7
1084 */
1085const ABDAY_7 = UNKNOWN;
1086#endif
1087#ifdef DAY_1
1088/**
1089 * @var int
1090 * @cvalue DAY_1
1091 */
1092const DAY_1 = UNKNOWN;
1093/**
1094 * @var int
1095 * @cvalue DAY_2
1096 */
1097const DAY_2 = UNKNOWN;
1098/**
1099 * @var int
1100 * @cvalue DAY_3
1101 */
1102const DAY_3 = UNKNOWN;
1103/**
1104 * @var int
1105 * @cvalue DAY_4
1106 */
1107const DAY_4 = UNKNOWN;
1108/**
1109 * @var int
1110 * @cvalue DAY_5
1111 */
1112const DAY_5 = UNKNOWN;
1113/**
1114 * @var int
1115 * @cvalue DAY_6
1116 */
1117const DAY_6 = UNKNOWN;
1118/**
1119 * @var int
1120 * @cvalue DAY_7
1121 */
1122const DAY_7 = UNKNOWN;
1123#endif
1124#ifdef ABMON_1
1125/**
1126 * @var int
1127 * @cvalue ABMON_1
1128 */
1129const ABMON_1 = UNKNOWN;
1130/**
1131 * @var int
1132 * @cvalue ABMON_2
1133 */
1134const ABMON_2 = UNKNOWN;
1135/**
1136 * @var int
1137 * @cvalue ABMON_3
1138 */
1139const ABMON_3 = UNKNOWN;
1140/**
1141 * @var int
1142 * @cvalue ABMON_4
1143 */
1144const ABMON_4 = UNKNOWN;
1145/**
1146 * @var int
1147 * @cvalue ABMON_5
1148 */
1149const ABMON_5 = UNKNOWN;
1150/**
1151 * @var int
1152 * @cvalue ABMON_6
1153 */
1154const ABMON_6 = UNKNOWN;
1155/**
1156 * @var int
1157 * @cvalue ABMON_7
1158 */
1159const ABMON_7 = UNKNOWN;
1160/**
1161 * @var int
1162 * @cvalue ABMON_8
1163 */
1164const ABMON_8 = UNKNOWN;
1165/**
1166 * @var int
1167 * @cvalue ABMON_9
1168 */
1169const ABMON_9 = UNKNOWN;
1170/**
1171 * @var int
1172 * @cvalue ABMON_10
1173 */
1174const ABMON_10 = UNKNOWN;
1175/**
1176 * @var int
1177 * @cvalue ABMON_11
1178 */
1179const ABMON_11 = UNKNOWN;
1180/**
1181 * @var int
1182 * @cvalue ABMON_12
1183 */
1184const ABMON_12 = UNKNOWN;
1185#endif
1186#ifdef MON_1
1187/**
1188 * @var int
1189 * @cvalue MON_1
1190 */
1191const MON_1 = UNKNOWN;
1192/**
1193 * @var int
1194 * @cvalue MON_2
1195 */
1196const MON_2 = UNKNOWN;
1197/**
1198 * @var int
1199 * @cvalue MON_3
1200 */
1201const MON_3 = UNKNOWN;
1202/**
1203 * @var int
1204 * @cvalue MON_4
1205 */
1206const MON_4 = UNKNOWN;
1207/**
1208 * @var int
1209 * @cvalue MON_5
1210 */
1211const MON_5 = UNKNOWN;
1212/**
1213 * @var int
1214 * @cvalue MON_6
1215 */
1216const MON_6 = UNKNOWN;
1217/**
1218 * @var int
1219 * @cvalue MON_7
1220 */
1221const MON_7 = UNKNOWN;
1222/**
1223 * @var int
1224 * @cvalue MON_8
1225 */
1226const MON_8 = UNKNOWN;
1227/**
1228 * @var int
1229 * @cvalue MON_9
1230 */
1231const MON_9 = UNKNOWN;
1232/**
1233 * @var int
1234 * @cvalue MON_10
1235 */
1236const MON_10 = UNKNOWN;
1237/**
1238 * @var int
1239 * @cvalue MON_11
1240 */
1241const MON_11 = UNKNOWN;
1242/**
1243 * @var int
1244 * @cvalue MON_12
1245 */
1246const MON_12 = UNKNOWN;
1247#endif
1248#ifdef AM_STR
1249/**
1250 * @var int
1251 * @cvalue AM_STR
1252 */
1253const AM_STR = UNKNOWN;
1254#endif
1255#ifdef PM_STR
1256/**
1257 * @var int
1258 * @cvalue PM_STR
1259 */
1260const PM_STR = UNKNOWN;
1261#endif
1262#ifdef D_T_FMT
1263/**
1264 * @var int
1265 * @cvalue D_T_FMT
1266 */
1267const D_T_FMT = UNKNOWN;
1268#endif
1269#ifdef D_FMT
1270/**
1271 * @var int
1272 * @cvalue D_FMT
1273 */
1274const D_FMT = UNKNOWN;
1275#endif
1276#ifdef T_FMT
1277/**
1278 * @var int
1279 * @cvalue T_FMT
1280 */
1281const T_FMT = UNKNOWN;
1282#endif
1283#ifdef T_FMT_AMPM
1284/**
1285 * @var int
1286 * @cvalue T_FMT_AMPM
1287 */
1288const T_FMT_AMPM = UNKNOWN;
1289#endif
1290#ifdef ERA
1291/**
1292 * @var int
1293 * @cvalue ERA
1294 */
1295const ERA = UNKNOWN;
1296#endif
1297#ifdef ERA_YEAR
1298/**
1299 * @var int
1300 * @cvalue ERA_YEAR
1301 */
1302const ERA_YEAR = UNKNOWN;
1303#endif
1304#ifdef ERA_D_T_FMT
1305/**
1306 * @var int
1307 * @cvalue ERA_D_T_FMT
1308 */
1309const ERA_D_T_FMT = UNKNOWN;
1310#endif
1311#ifdef ERA_D_FMT
1312/**
1313 * @var int
1314 * @cvalue ERA_D_FMT
1315 */
1316const ERA_D_FMT = UNKNOWN;
1317#endif
1318#ifdef ERA_T_FMT
1319/**
1320 * @var int
1321 * @cvalue ERA_T_FMT
1322 */
1323const ERA_T_FMT = UNKNOWN;
1324#endif
1325#ifdef ALT_DIGITS
1326/**
1327 * @var int
1328 * @cvalue ALT_DIGITS
1329 */
1330const ALT_DIGITS = UNKNOWN;
1331#endif
1332#ifdef INT_CURR_SYMBOL
1333/**
1334 * @var int
1335 * @cvalue INT_CURR_SYMBOL
1336 */
1337const INT_CURR_SYMBOL = UNKNOWN;
1338#endif
1339#ifdef CURRENCY_SYMBOL
1340/**
1341 * @var int
1342 * @cvalue CURRENCY_SYMBOL
1343 */
1344const CURRENCY_SYMBOL = UNKNOWN;
1345#endif
1346#ifdef CRNCYSTR
1347/**
1348 * @var int
1349 * @cvalue CRNCYSTR
1350 */
1351const CRNCYSTR = UNKNOWN;
1352#endif
1353#ifdef MON_DECIMAL_POINT
1354/**
1355 * @var int
1356 * @cvalue MON_DECIMAL_POINT
1357 */
1358const MON_DECIMAL_POINT = UNKNOWN;
1359#endif
1360#ifdef MON_THOUSANDS_SEP
1361/**
1362 * @var int
1363 * @cvalue MON_THOUSANDS_SEP
1364 */
1365const MON_THOUSANDS_SEP = UNKNOWN;
1366#endif
1367#ifdef MON_GROUPING
1368/**
1369 * @var int
1370 * @cvalue MON_GROUPING
1371 */
1372const MON_GROUPING = UNKNOWN;
1373#endif
1374#ifdef POSITIVE_SIGN
1375/**
1376 * @var int
1377 * @cvalue POSITIVE_SIGN
1378 */
1379const POSITIVE_SIGN = UNKNOWN;
1380#endif
1381#ifdef NEGATIVE_SIGN
1382/**
1383 * @var int
1384 * @cvalue NEGATIVE_SIGN
1385 */
1386const NEGATIVE_SIGN = UNKNOWN;
1387#endif
1388#ifdef INT_FRAC_DIGITS
1389/**
1390 * @var int
1391 * @cvalue INT_FRAC_DIGITS
1392 */
1393const INT_FRAC_DIGITS = UNKNOWN;
1394#endif
1395#ifdef FRAC_DIGITS
1396/**
1397 * @var int
1398 * @cvalue FRAC_DIGITS
1399 */
1400const FRAC_DIGITS = UNKNOWN;
1401#endif
1402#ifdef P_CS_PRECEDES
1403/**
1404 * @var int
1405 * @cvalue P_CS_PRECEDES
1406 */
1407const P_CS_PRECEDES = UNKNOWN;
1408#endif
1409#ifdef P_SEP_BY_SPACE
1410/**
1411 * @var int
1412 * @cvalue P_SEP_BY_SPACE
1413 */
1414const P_SEP_BY_SPACE = UNKNOWN;
1415#endif
1416#ifdef N_CS_PRECEDES
1417/**
1418 * @var int
1419 * @cvalue N_CS_PRECEDES
1420 */
1421const N_CS_PRECEDES = UNKNOWN;
1422#endif
1423#ifdef N_SEP_BY_SPACE
1424/**
1425 * @var int
1426 * @cvalue N_SEP_BY_SPACE
1427 */
1428const N_SEP_BY_SPACE = UNKNOWN;
1429#endif
1430#ifdef P_SIGN_POSN
1431/**
1432 * @var int
1433 * @cvalue P_SIGN_POSN
1434 */
1435const P_SIGN_POSN = UNKNOWN;
1436#endif
1437#ifdef N_SIGN_POSN
1438/**
1439 * @var int
1440 * @cvalue N_SIGN_POSN
1441 */
1442const N_SIGN_POSN = UNKNOWN;
1443#endif
1444#ifdef DECIMAL_POINT
1445/**
1446 * @var int
1447 * @cvalue DECIMAL_POINT
1448 */
1449const DECIMAL_POINT = UNKNOWN;
1450#endif
1451#ifdef RADIXCHAR
1452/**
1453 * @var int
1454 * @cvalue RADIXCHAR
1455 */
1456const RADIXCHAR = UNKNOWN;
1457#endif
1458#ifdef THOUSANDS_SEP
1459/**
1460 * @var int
1461 * @cvalue THOUSANDS_SEP
1462 */
1463const THOUSANDS_SEP = UNKNOWN;
1464#endif
1465#ifdef THOUSEP
1466/**
1467 * @var int
1468 * @cvalue THOUSEP
1469 */
1470const THOUSEP = UNKNOWN;
1471#endif
1472#ifdef GROUPING
1473/**
1474 * @var int
1475 * @cvalue GROUPING
1476 */
1477const GROUPING = UNKNOWN;
1478#endif
1479#ifdef YESEXPR
1480/**
1481 * @var int
1482 * @cvalue YESEXPR
1483 */
1484const YESEXPR = UNKNOWN;
1485#endif
1486#ifdef NOEXPR
1487/**
1488 * @var int
1489 * @cvalue NOEXPR
1490 */
1491const NOEXPR = UNKNOWN;
1492#endif
1493#ifdef YESSTR
1494/**
1495 * @var int
1496 * @cvalue YESSTR
1497 */
1498const YESSTR = UNKNOWN;
1499#endif
1500#ifdef NOSTR
1501/**
1502 * @var int
1503 * @cvalue NOSTR
1504 */
1505const NOSTR = UNKNOWN;
1506#endif
1507#ifdef CODESET
1508/**
1509 * @var int
1510 * @cvalue CODESET
1511 */
1512const CODESET = UNKNOWN;
1513#endif
1514#endif
1515
1516/** @undocumentable */
1517#[AllowDynamicProperties]
1518final class __PHP_Incomplete_Class
1519{
1520}
1521
1522class AssertionError extends Error
1523{
1524}
1525
1526/* main/main.c */
1527
1528function set_time_limit(int $seconds): bool {}
1529
1530/* main/SAPI.c */
1531
1532function header_register_callback(callable $callback): bool {}
1533
1534/* main/output.c */
1535
1536/** @param callable|null $callback */
1537function ob_start($callback = null, int $chunk_size = 0, int $flags = PHP_OUTPUT_HANDLER_STDFLAGS): bool {}
1538
1539function ob_flush(): bool {}
1540
1541function ob_clean(): bool {}
1542
1543function ob_end_flush(): bool {}
1544
1545function ob_end_clean(): bool {}
1546
1547/** @refcount 1 */
1548function ob_get_flush(): string|false {}
1549
1550/** @refcount 1 */
1551function ob_get_clean(): string|false {}
1552
1553function ob_get_contents(): string|false {}
1554
1555function ob_get_level(): int {}
1556
1557function ob_get_length(): int|false {}
1558
1559/**
1560 * @return array<int, string>
1561 * @refcount 1
1562 */
1563function ob_list_handlers(): array {}
1564
1565/**
1566 * @return array<int|string, int|string|array>
1567 * @refcount 1
1568 */
1569function ob_get_status(bool $full_status = false): array {}
1570
1571function ob_implicit_flush(bool $enable = true): void {}
1572
1573function output_reset_rewrite_vars(): bool {}
1574
1575function output_add_rewrite_var(string $name, string $value): bool {}
1576
1577/* main/streams/userspace.c */
1578
1579function stream_wrapper_register(string $protocol, string $class, int $flags = 0): bool {}
1580
1581/** @alias stream_wrapper_register */
1582function stream_register_wrapper(string $protocol, string $class, int $flags = 0): bool {}
1583
1584function stream_wrapper_unregister(string $protocol): bool {}
1585
1586function stream_wrapper_restore(string $protocol): bool {}
1587
1588/* array.c */
1589
1590function array_push(array &$array, mixed ...$values): int {}
1591
1592function krsort(array &$array, int $flags = SORT_REGULAR): true {}
1593
1594function ksort(array &$array, int $flags = SORT_REGULAR): true {}
1595
1596/** @compile-time-eval */
1597function count(Countable|array $value, int $mode = COUNT_NORMAL): int {}
1598
1599/** @alias count */
1600function sizeof(Countable|array $value, int $mode = COUNT_NORMAL): int {}
1601
1602function natsort(array &$array): true {}
1603
1604function natcasesort(array &$array): true {}
1605
1606function asort(array &$array, int $flags = SORT_REGULAR): true {}
1607
1608function arsort(array &$array, int $flags = SORT_REGULAR): true {}
1609
1610function sort(array &$array, int $flags = SORT_REGULAR): true {}
1611
1612function rsort(array &$array, int $flags = SORT_REGULAR): true {}
1613
1614function usort(array &$array, callable $callback): true {}
1615
1616function uasort(array &$array, callable $callback): true {}
1617
1618function uksort(array &$array, callable $callback): true {}
1619
1620function end(array|object &$array): mixed {}
1621
1622function prev(array|object &$array): mixed {}
1623
1624function next(array|object &$array): mixed {}
1625
1626function reset(array|object &$array): mixed {}
1627
1628function current(array|object $array): mixed {}
1629
1630/** @alias current */
1631function pos(array|object $array): mixed {}
1632
1633function key(array|object $array): int|string|null {}
1634
1635/**
1636 * @compile-time-eval
1637 * @frameless-function {"arity": 2}
1638 */
1639function min(mixed $value, mixed ...$values): mixed {}
1640
1641/**
1642 * @compile-time-eval
1643 * @frameless-function {"arity": 2}
1644 */
1645function max(mixed $value, mixed ...$values): mixed {}
1646
1647function array_walk(array|object &$array, callable $callback, mixed $arg = UNKNOWN): true {}
1648
1649function array_walk_recursive(array|object &$array, callable $callback, mixed $arg = UNKNOWN): true {}
1650
1651/**
1652 * @compile-time-eval
1653 * @frameless-function {"arity": 2}
1654 * @frameless-function {"arity": 3}
1655 */
1656function in_array(mixed $needle, array $haystack, bool $strict = false): bool {}
1657
1658/**
1659 * @compile-time-eval
1660 */
1661function array_search(mixed $needle, array $haystack, bool $strict = false): int|string|false {}
1662
1663/** @prefer-ref $array */
1664function extract(array &$array, int $flags = EXTR_OVERWRITE, string $prefix = ""): int {}
1665
1666/**
1667 * @param array|string $var_name
1668 * @param array|string $var_names
1669 * @return array<string, mixed|ref>
1670 * @refcount 1
1671 */
1672function compact($var_name, ...$var_names): array {}
1673
1674/** @return array<int, mixed> */
1675function array_fill(int $start_index, int $count, mixed $value): array {}
1676
1677/** @refcount 1 */
1678function array_fill_keys(array $keys, mixed $value): array {}
1679
1680function range(string|int|float $start, string|int|float $end, int|float $step = 1): array {}
1681
1682function shuffle(array &$array): true {}
1683
1684function array_pop(array &$array): mixed {}
1685
1686function array_shift(array &$array): mixed {}
1687
1688function array_unshift(array &$array, mixed ...$values): int {}
1689
1690function array_splice(array &$array, int $offset, ?int $length = null, mixed $replacement = []): array {}
1691
1692/**
1693 * @compile-time-eval
1694 */
1695function array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array {}
1696
1697/**
1698 * @compile-time-eval
1699 */
1700function array_merge(array ...$arrays): array {}
1701
1702/**
1703 * @compile-time-eval
1704 */
1705function array_merge_recursive(array ...$arrays): array {}
1706
1707/**
1708 * @compile-time-eval
1709 * @refcount 1
1710 */
1711function array_replace(array $array, array ...$replacements): array {}
1712
1713/**
1714 * @compile-time-eval
1715 * @refcount 1
1716 */
1717function array_replace_recursive(array $array, array ...$replacements): array {}
1718
1719/**
1720 * @return array<int, int|string>
1721 * @compile-time-eval
1722 */
1723function array_keys(array $array, mixed $filter_value = UNKNOWN, bool $strict = false): array {}
1724
1725/**
1726 * @compile-time-eval
1727 */
1728function array_key_first(array $array): int|string|null {}
1729
1730/**
1731 * @compile-time-eval
1732 */
1733function array_key_last(array $array): int|string|null {}
1734
1735/**
1736 * @return array<int, mixed|ref>
1737 * @compile-time-eval
1738 */
1739function array_values(array $array): array {}
1740
1741/**
1742 * @return array<int|string, int>
1743 * @compile-time-eval
1744 * @refcount 1
1745 */
1746function array_count_values(array $array): array {}
1747
1748/**
1749 * @compile-time-eval
1750 * @refcount 1
1751 */
1752function array_column(array $array, int|string|null $column_key, int|string|null $index_key = null): array {}
1753
1754/**
1755 * @compile-time-eval
1756 * @refcount 1
1757 */
1758function array_reverse(array $array, bool $preserve_keys = false): array {}
1759
1760function array_pad(array $array, int $length, mixed $value): array {}
1761
1762/**
1763 * @return array<int|string, int|string>
1764 * @compile-time-eval
1765 * @refcount 1
1766 */
1767function array_flip(array $array): array {}
1768
1769/**
1770 * @compile-time-eval
1771 * @refcount 1
1772 */
1773function array_change_key_case(array $array, int $case = CASE_LOWER): array {}
1774
1775/**
1776 * @compile-time-eval
1777 */
1778function array_unique(array $array, int $flags = SORT_STRING): array {}
1779
1780/**
1781 * @compile-time-eval
1782 * @refcount 1
1783 */
1784function array_intersect_key(array $array, array ...$arrays): array {}
1785
1786/**
1787 * @param array|callable $rest
1788 * @refcount 1
1789 */
1790function array_intersect_ukey(array $array, ...$rest): array {}
1791
1792/**
1793 * @compile-time-eval
1794 * @refcount 1
1795 */
1796function array_intersect(array $array, array ...$arrays): array {}
1797
1798/**
1799 * @param array|callable $rest
1800 * @refcount 1
1801 */
1802function array_uintersect(array $array, ...$rest): array {}
1803
1804/**
1805 * @compile-time-eval
1806 * @refcount 1
1807 */
1808function array_intersect_assoc(array $array, array ...$arrays): array {}
1809
1810/**
1811 * @param array|callable $rest
1812 * @refcount 1
1813 */
1814function array_uintersect_assoc(array $array, ...$rest): array {}
1815
1816/**
1817 * @param array|callable $rest
1818 * @refcount 1
1819 */
1820function array_intersect_uassoc(array $array, ...$rest): array {}
1821
1822/**
1823 * @param array|callable $rest
1824 * @refcount 1
1825 */
1826function array_uintersect_uassoc(array $array, ...$rest): array {}
1827
1828/**
1829 * @compile-time-eval
1830 * @refcount 1
1831 */
1832function array_diff_key(array $array, array ...$arrays): array {}
1833
1834/**
1835 * @param array|callable $rest
1836 * @refcount 1
1837 */
1838function array_diff_ukey(array $array, ...$rest): array {}
1839
1840/**
1841 * @compile-time-eval
1842 */
1843function array_diff(array $array, array ...$arrays): array {}
1844
1845/**
1846 * @param array|callable $rest
1847 * @refcount 1
1848 */
1849function array_udiff(array $array, ...$rest): array {}
1850
1851/**
1852 * @compile-time-eval
1853 * @refcount 1
1854 */
1855function array_diff_assoc(array $array, array ...$arrays): array {}
1856
1857/**
1858 * @param array|callable $rest
1859 * @refcount 1
1860 */
1861function array_diff_uassoc(array $array, ...$rest): array {}
1862
1863/**
1864 * @param array|callable $rest
1865 * @refcount 1
1866 */
1867function array_udiff_assoc(array $array, ...$rest): array {}
1868
1869/**
1870 * @param array|callable $rest
1871 * @refcount 1
1872 */
1873function array_udiff_uassoc(array $array, ...$rest): array {}
1874
1875/**
1876 * @param array $array
1877 * @param array|int $rest
1878 * @prefer-ref $array
1879 * @prefer-ref $rest
1880 */
1881function array_multisort(&$array, &...$rest): bool {}
1882
1883/** @return int|string|array<int, int|string> */
1884function array_rand(array $array, int $num = 1): int|string|array {}
1885
1886/**
1887 * @compile-time-eval
1888 */
1889function array_sum(array $array): int|float {}
1890
1891/**
1892 * @compile-time-eval
1893 */
1894function array_product(array $array): int|float {}
1895
1896function array_reduce(array $array, callable $callback, mixed $initial = null): mixed {}
1897
1898function array_filter(array $array, ?callable $callback = null, int $mode = 0): array {}
1899
1900function array_find(array $array, callable $callback): mixed {}
1901
1902function array_find_key(array $array, callable $callback): mixed {}
1903
1904function array_any(array $array, callable $callback): bool {}
1905
1906function array_all(array $array, callable $callback): bool {}
1907
1908function array_map(?callable $callback, array $array, array ...$arrays): array {}
1909
1910/**
1911 * @param string|int $key
1912 * @compile-time-eval
1913 */
1914function array_key_exists($key, array $array): bool {}
1915
1916/**
1917 * @param string|int $key
1918 * @alias array_key_exists
1919 */
1920function key_exists($key, array $array): bool {}
1921
1922/**
1923 * @compile-time-eval
1924 */
1925function array_chunk(array $array, int $length, bool $preserve_keys = false): array {}
1926
1927/**
1928 * @compile-time-eval
1929 */
1930function array_combine(array $keys, array $values): array {}
1931
1932/** @compile-time-eval */
1933function array_is_list(array $array): bool {}
1934
1935/* base64.c */
1936
1937/**
1938 * @compile-time-eval
1939 * @refcount 1
1940 */
1941function base64_encode(string $string): string {}
1942
1943/**
1944 * @compile-time-eval
1945 * @refcount 1
1946 */
1947function base64_decode(string $string, bool $strict = false): string|false {}
1948
1949/* basic_functions.c */
1950
1951function constant(string $name): mixed {}
1952
1953function ip2long(string $ip): int|false {}
1954
1955/** @refcount 1 */
1956function long2ip(int $ip): string {}
1957
1958/**
1959 * @return string|array<string, string>|false
1960 * @refcount 1
1961 */
1962function getenv(?string $name = null, bool $local_only = false): string|array|false {}
1963
1964#ifdef HAVE_PUTENV
1965function putenv(string $assignment): bool {}
1966#endif
1967
1968/**
1969 * @param int $rest_index
1970 * @return array<int|string, string|array|false>|false
1971 * @refcount 1
1972 */
1973function getopt(string $short_options, array $long_options = [], &$rest_index = null): array|false {}
1974
1975function flush(): void {}
1976
1977function sleep(int $seconds): int {}
1978
1979function usleep(int $microseconds): void {}
1980
1981#ifdef HAVE_NANOSLEEP
1982/**
1983 * @return array<string, int>|bool
1984 * @refcount 1
1985 */
1986function time_nanosleep(int $seconds, int $nanoseconds): array|bool {}
1987
1988function time_sleep_until(float $timestamp): bool {}
1989#endif
1990
1991/** @refcount 1 */
1992function get_current_user(): string {}
1993
1994/** @return string|array<int|string, string|array>|false */
1995function get_cfg_var(string $option): string|array|false {}
1996
1997function error_log(string $message, int $message_type = 0, ?string $destination = null, ?string $additional_headers = null): bool {}
1998
1999/**
2000 * @return array<string, int|string>|null
2001 * @refcount 1
2002 */
2003function error_get_last(): ?array {}
2004
2005function error_clear_last(): void {}
2006
2007function call_user_func(callable $callback, mixed ...$args): mixed {}
2008
2009function call_user_func_array(callable $callback, array $args): mixed {}
2010
2011function forward_static_call(callable $callback, mixed ...$args): mixed {}
2012
2013function forward_static_call_array(callable $callback, array $args): mixed {}
2014
2015function register_shutdown_function(callable $callback, mixed ...$args): void {}
2016
2017/** @refcount 1 */
2018function highlight_file(string $filename, bool $return = false): string|bool {}
2019
2020/** @alias highlight_file */
2021function show_source(string $filename, bool $return = false): string|bool {}
2022
2023/** @refcount 1 */
2024function php_strip_whitespace(string $filename): string {}
2025
2026/** @refcount 1 */
2027function highlight_string(string $string, bool $return = false): string|bool {}
2028
2029function ini_get(string $option): string|false {}
2030
2031/**
2032 * @return array<string, string|array|null>|false
2033 * @refcount 1
2034 */
2035function ini_get_all(?string $extension = null, bool $details = true): array|false {}
2036
2037function ini_set(string $option, string|int|float|bool|null $value): string|false {}
2038
2039/** @alias ini_set */
2040function ini_alter(string $option, string|int|float|bool|null $value): string|false {}
2041
2042function ini_restore(string $option): void {}
2043
2044function ini_parse_quantity(string $shorthand): int {}
2045
2046/** @refcount 1 */
2047function set_include_path(string $include_path): string|false {}
2048
2049/** @refcount 1 */
2050function get_include_path(): string|false {}
2051
2052/** @refcount 1 */
2053function print_r(mixed $value, bool $return = false): string|bool {}
2054
2055function connection_aborted(): int {}
2056
2057function connection_status(): int {}
2058
2059function ignore_user_abort(?bool $enable = null): int {}
2060
2061#ifdef HAVE_GETSERVBYNAME
2062function getservbyname(string $service, string $protocol): int|false {}
2063#endif
2064
2065#ifdef HAVE_GETSERVBYPORT
2066/** @refcount 1 */
2067function getservbyport(int $port, string $protocol): string|false {}
2068#endif
2069
2070#ifdef HAVE_GETPROTOBYNAME
2071function getprotobyname(string $protocol): int|false {}
2072#endif
2073
2074#ifdef HAVE_GETPROTOBYNUMBER
2075/** @refcount 1 */
2076function getprotobynumber(int $protocol): string|false {}
2077#endif
2078
2079function register_tick_function(callable $callback, mixed ...$args): bool {}
2080
2081function unregister_tick_function(callable $callback): void {}
2082
2083function is_uploaded_file(string $filename): bool {}
2084
2085function move_uploaded_file(string $from, string $to): bool {}
2086
2087/**
2088 * @return array<int|string, bool|int|float|string|array|null>|false
2089 * @refcount 1
2090 */
2091function parse_ini_file(string $filename, bool $process_sections = false, int $scanner_mode = INI_SCANNER_NORMAL): array|false {}
2092
2093/**
2094 * @return array<int|string, bool|int|float|string|array|null>|false
2095 * @compile-time-eval
2096 * @refcount 1
2097 */
2098function parse_ini_string(string $ini_string, bool $process_sections = false, int $scanner_mode = INI_SCANNER_NORMAL): array|false {}
2099
2100#if ZEND_DEBUG
2101/**
2102 * @return array<string, string|array>
2103 * @refcount 1
2104 */
2105function config_get_hash(): array {}
2106#endif
2107
2108#ifdef HAVE_GETLOADAVG
2109/**
2110 * @return array<int, float>|false
2111 * @refcount 1
2112 */
2113function sys_getloadavg(): array|false {}
2114#endif
2115
2116/* browscap.c */
2117
2118/**
2119 * @return object|array<string, mixed>|false
2120 * @refcount 1
2121 */
2122function get_browser(?string $user_agent = null, bool $return_array = false): object|array|false {}
2123
2124/* crc32.c */
2125
2126/** @compile-time-eval */
2127function crc32(string $string): int {}
2128
2129/* crypt.c */
2130
2131/** @refcount 1 */
2132function crypt(#[\SensitiveParameter] string $string, string $salt): string {}
2133
2134/* datetime.c */
2135
2136#ifdef HAVE_STRPTIME
2137/**
2138 * @return array<string, int|string>|false
2139 * @deprecated
2140 * @refcount 1
2141 */
2142function strptime(string $timestamp, string $format): array|false {}
2143#endif
2144
2145/* dns.c */
2146
2147#ifdef HAVE_GETHOSTNAME
2148/** @refcount 1 */
2149function gethostname(): string|false {}
2150#endif
2151
2152/** @refcount 1 */
2153function gethostbyaddr(string $ip): string|false {}
2154
2155/** @refcount 1 */
2156function gethostbyname(string $hostname): string {}
2157
2158/**
2159 * @return array<int, string>|false
2160 * @refcount 1
2161 */
2162function gethostbynamel(string $hostname): array|false {}
2163
2164#if (defined(PHP_WIN32) || defined(HAVE_DNS_SEARCH_FUNC))
2165function dns_check_record(string $hostname, string $type = "MX"): bool {}
2166
2167/** @alias dns_check_record */
2168function checkdnsrr(string $hostname, string $type = "MX"): bool {}
2169
2170/**
2171 * @param array $authoritative_name_servers
2172 * @param array $additional_records
2173 * @return array<int, array>|false
2174 * @refcount 1
2175 */
2176function dns_get_record(string $hostname, int $type = DNS_ANY, &$authoritative_name_servers = null, &$additional_records = null, bool $raw = false): array|false {}
2177
2178/**
2179 * @param array $hosts
2180 * @param array $weights
2181 */
2182function dns_get_mx(string $hostname, &$hosts, &$weights = null): bool {}
2183
2184/**
2185 * @param array $hosts
2186 * @param array $weights
2187 * @alias dns_get_mx
2188 */
2189function getmxrr(string $hostname, &$hosts, &$weights = null): bool {}
2190#endif
2191
2192/* net.c */
2193
2194#if (defined(PHP_WIN32) || HAVE_GETIFADDRS || defined(__PASE__))
2195function net_get_interfaces(): array|false {}
2196#endif
2197
2198/* ftok.c */
2199
2200#ifdef HAVE_FTOK
2201function ftok(string $filename, string $project_id): int {}
2202#endif
2203
2204/* hrtime.c */
2205
2206function hrtime(bool $as_number = false): array|int|float|false {}
2207
2208/* md5.c */
2209
2210/** @refcount 1 */
2211function md5(string $string, bool $binary = false): string {}
2212
2213/** @refcount 1 */
2214function md5_file(string $filename, bool $binary = false): string|false {}
2215
2216/* pageinfo.c */
2217
2218function getmyuid(): int|false {}
2219
2220function getmygid(): int|false {}
2221
2222function getmypid(): int|false {}
2223
2224function getmyinode(): int|false {}
2225
2226function getlastmod(): int|false {}
2227
2228/* sha1.c */
2229
2230/** @refcount 1 */
2231function sha1(string $string, bool $binary = false): string {}
2232
2233/** @refcount 1 */
2234function sha1_file(string $filename, bool $binary = false): string|false {}
2235
2236/* syslog.c */
2237
2238#ifdef HAVE_SYSLOG_H
2239function openlog(string $prefix, int $flags, int $facility): true {}
2240
2241function closelog(): true {}
2242
2243function syslog(int $priority, string $message): true {}
2244#endif
2245
2246/** @refcount 1 */
2247function inet_ntop(string $ip): string|false {}
2248
2249/** @refcount 1 */
2250function inet_pton(string $ip): string|false {}
2251
2252/* metaphone.c */
2253
2254/** @refcount 1 */
2255function metaphone(string $string, int $max_phonemes = 0): string {}
2256
2257/* {{{ head.c */
2258function header(string $header, bool $replace = true, int $response_code = 0): void {}
2259
2260function header_remove(?string $name = null): void {}
2261
2262function setrawcookie(string $name, string $value = "", array|int $expires_or_options = 0, string $path = "", string $domain = "", bool $secure = false, bool $httponly = false): bool {}
2263
2264function setcookie(string $name, string $value = "", array|int $expires_or_options = 0, string $path = "", string $domain = "", bool $secure = false, bool $httponly = false): bool {}
2265
2266function http_response_code(int $response_code = 0): int|bool {}
2267
2268/**
2269 * @param string $filename
2270 * @param int $line
2271 */
2272function headers_sent(&$filename = null, &$line = null): bool {}
2273
2274/**
2275 * @return array<int, string>
2276 * @refcount 1
2277 */
2278function headers_list(): array {}
2279
2280/* {{{ html.c */
2281
2282/** @refcount 1 */
2283function htmlspecialchars(string $string, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, ?string $encoding = null, bool $double_encode = true): string {}
2284
2285function htmlspecialchars_decode(string $string, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401): string {}
2286
2287function html_entity_decode(string $string, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, ?string $encoding = null): string {}
2288
2289/** @refcount 1 */
2290function htmlentities(string $string, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, ?string $encoding = null, bool $double_encode = true): string {}
2291
2292/**
2293 * @return array<string, string>
2294 * @refcount 1
2295 */
2296function get_html_translation_table(int $table = HTML_SPECIALCHARS, int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, string $encoding = "UTF-8"): array {}
2297
2298/* }}} */
2299
2300/* assert.c */
2301
2302function assert(mixed $assertion, Throwable|string|null $description = null): bool {}
2303
2304/** @deprecated */
2305function assert_options(int $option, mixed $value = UNKNOWN): mixed {}
2306
2307/* string.c */
2308
2309/**
2310 * @compile-time-eval
2311 * @refcount 1
2312 */
2313function bin2hex(string $string): string {}
2314
2315/**
2316 * @compile-time-eval
2317 * @refcount 1
2318 */
2319function hex2bin(string $string): string|false {}
2320
2321/**
2322 * @compile-time-eval
2323 */
2324function strspn(string $string, string $characters, int $offset = 0, ?int $length = null): int {}
2325
2326/**
2327 * @compile-time-eval
2328 */
2329function strcspn(string $string, string $characters, int $offset = 0, ?int $length = null): int {}
2330
2331#ifdef HAVE_NL_LANGINFO
2332/** @refcount 1 */
2333function nl_langinfo(int $item): string|false {}
2334#endif
2335
2336function strcoll(string $string1, string $string2): int {}
2337
2338/**
2339 * @compile-time-eval
2340 * @frameless-function {"arity": 1}
2341 * @frameless-function {"arity": 2}
2342 */
2343function trim(string $string, string $characters = " \n\r\t\v\0"): string {}
2344
2345/** @compile-time-eval */
2346function rtrim(string $string, string $characters = " \n\r\t\v\0"): string {}
2347
2348/** @alias rtrim */
2349function chop(string $string, string $characters = " \n\r\t\v\0"): string {}
2350
2351/** @compile-time-eval */
2352function ltrim(string $string, string $characters = " \n\r\t\v\0"): string {}
2353
2354/**
2355 * @compile-time-eval
2356 * @refcount 1
2357 */
2358function wordwrap(string $string, int $width = 75, string $break = "\n", bool $cut_long_words = false): string {}
2359
2360/**
2361 * @return array<int, string>
2362 * @compile-time-eval
2363 * @refcount 1
2364 */
2365function explode(string $separator, string $string, int $limit = PHP_INT_MAX): array {}
2366
2367/**
2368 * @compile-time-eval
2369 * @frameless-function {"arity": 1}
2370 * @frameless-function {"arity": 2}
2371 */
2372function implode(string|array $separator, ?array $array = null): string {}
2373
2374/** @alias implode */
2375function join(string|array $separator, ?array $array = null): string {}
2376
2377/**
2378 * @refcount 1
2379 */
2380function strtok(string $string, ?string $token = null): string|false {}
2381
2382/** @compile-time-eval */
2383function strtoupper(string $string): string {}
2384
2385/** @compile-time-eval */
2386function strtolower(string $string): string {}
2387
2388function str_increment(string $string): string {}
2389
2390function str_decrement(string $string): string {}
2391
2392/** @refcount 1 */
2393function basename(string $path, string $suffix = ""): string {}
2394
2395/**
2396 * @refcount 1
2397 * @frameless-function {"arity": 1}
2398 * @frameless-function {"arity": 2}
2399 */
2400function dirname(string $path, int $levels = 1): string {}
2401
2402/**
2403 * @return array<string, string>|string
2404 * @refcount 1
2405 */
2406function pathinfo(string $path, int $flags = PATHINFO_ALL): array|string {}
2407
2408/**
2409 * @compile-time-eval
2410 * @refcount 1
2411 */
2412function stristr(string $haystack, string $needle, bool $before_needle = false): string|false {}
2413
2414/**
2415 * @compile-time-eval
2416 * @refcount 1
2417 * @frameless-function {"arity": 2}
2418 * @frameless-function {"arity": 3}
2419 */
2420function strstr(string $haystack, string $needle, bool $before_needle = false): string|false {}
2421
2422/** @alias strstr */
2423function strchr(string $haystack, string $needle, bool $before_needle = false): string|false {}
2424
2425/**
2426 * @compile-time-eval
2427 * @frameless-function {"arity": 2}
2428 * @frameless-function {"arity": 3}
2429 */
2430function strpos(string $haystack, string $needle, int $offset = 0): int|false {}
2431
2432/** @compile-time-eval */
2433function stripos(string $haystack, string $needle, int $offset = 0): int|false {}
2434
2435/** @compile-time-eval */
2436function strrpos(string $haystack, string $needle, int $offset = 0): int|false {}
2437
2438/** @compile-time-eval */
2439function strripos(string $haystack, string $needle, int $offset = 0): int|false {}
2440
2441/**
2442 * @compile-time-eval
2443 * @refcount 1
2444 */
2445function strrchr(string $haystack, string $needle, bool $before_needle = false): string|false {}
2446
2447/**
2448 * @compile-time-eval
2449 * @frameless-function {"arity": 2}
2450 */
2451function str_contains(string $haystack, string $needle): bool {}
2452
2453/**
2454 * @compile-time-eval
2455 * @frameless-function {"arity": 2}
2456 */
2457function str_starts_with(string $haystack, string $needle): bool {}
2458
2459/** @compile-time-eval */
2460function str_ends_with(string $haystack, string $needle): bool {}
2461
2462/**
2463 * @compile-time-eval
2464 * @refcount 1
2465 */
2466function chunk_split(string $string, int $length = 76, string $separator = "\r\n"): string {}
2467
2468/**
2469 * @compile-time-eval
2470 * @frameless-function {"arity": 2}
2471 * @frameless-function {"arity": 3}
2472 */
2473function substr(string $string, int $offset, ?int $length = null): string {}
2474
2475/**
2476 * @return string|array<int|string, string>
2477 * @compile-time-eval
2478 */
2479function substr_replace(array|string $string, array|string $replace, array|int $offset, array|int|null $length = null): string|array {}
2480
2481/**
2482 * @compile-time-eval
2483 * @refcount 1
2484 */
2485function quotemeta(string $string): string {}
2486
2487/** @compile-time-eval */
2488function ord(string $character): int {}
2489
2490/**
2491 * @compile-time-eval
2492 * @refcount 1
2493 */
2494function chr(int $codepoint): string {}
2495
2496/** @compile-time-eval */
2497function ucfirst(string $string): string {}
2498
2499/** @compile-time-eval */
2500function lcfirst(string $string): string {}
2501
2502/**
2503 * @compile-time-eval
2504 * @refcount 1
2505 */
2506function ucwords(string $string, string $separators = " \t\r\n\f\v"): string {}
2507
2508/**
2509 * @compile-time-eval
2510 * @frameless-function {"arity": 2}
2511 * @frameless-function {"arity": 3}
2512 */
2513function strtr(string $string, string|array $from, ?string $to = null): string {}
2514
2515/**
2516 * @compile-time-eval
2517 * @refcount 1
2518 */
2519function strrev(string $string): string {}
2520
2521/** @param float $percent */
2522function similar_text(string $string1, string $string2, &$percent = null): int {}
2523
2524/**
2525 * @compile-time-eval
2526 */
2527function addcslashes(string $string, string $characters): string {}
2528
2529/**
2530 * @compile-time-eval
2531 */
2532function addslashes(string $string): string {}
2533
2534/**
2535 * @compile-time-eval
2536 * @refcount 1
2537 */
2538function stripcslashes(string $string): string {}
2539
2540/**
2541 * @compile-time-eval
2542 * @refcount 1
2543 */
2544function stripslashes(string $string): string {}
2545
2546/**
2547 * @param int $count
2548 * @return string|array<int|string, string>
2549 * @compile-time-eval
2550 * @frameless-function {"arity": 3}
2551 */
2552function str_replace(array|string $search, array|string $replace, string|array $subject, &$count = null): string|array {}
2553
2554/**
2555 * @param int $count
2556 * @return string|array<int|string, string>
2557 * @compile-time-eval
2558 */
2559function str_ireplace(array|string $search, array|string $replace, string|array $subject, &$count = null): string|array {}
2560
2561/** @refcount 1 */
2562function hebrev(string $string, int $max_chars_per_line = 0): string {}
2563
2564/**
2565 * @compile-time-eval
2566 */
2567function nl2br(string $string, bool $use_xhtml = true): string {}
2568
2569/**
2570 * @compile-time-eval
2571 * @refcount 1
2572 */
2573function strip_tags(string $string, array|string|null $allowed_tags = null): string {}
2574
2575/**
2576 * @param array|string $locales
2577 * @param string $rest
2578 */
2579function setlocale(int $category, $locales, ...$rest): string|false {}
2580
2581/** @param array $result */
2582function parse_str(string $string, &$result): void {}
2583
2584/**
2585 * @return array<int, string|null>
2586 * @refcount 1
2587 */
2588function str_getcsv(string $string, string $separator = ",", string $enclosure = "\"", string $escape = "\\"): array {}
2589
2590/** @refcount 1 */
2591function str_repeat(string $string, int $times): string {}
2592
2593/**
2594 * @return array<int, int>|string
2595 * @compile-time-eval
2596 * @refcount 1
2597 */
2598function count_chars(string $string, int $mode = 0): array|string {}
2599
2600function strnatcmp(string $string1, string $string2): int {}
2601
2602/**
2603 * @return array<string, int|string|array>
2604 * @refcount 1
2605 */
2606function localeconv(): array {}
2607
2608function strnatcasecmp(string $string1, string $string2): int {}
2609
2610/**
2611 * @compile-time-eval
2612 */
2613function substr_count(string $haystack, string $needle, int $offset = 0, ?int $length = null): int {}
2614
2615function str_pad(string $string, int $length, string $pad_string = " ", int $pad_type = STR_PAD_RIGHT): string {}
2616
2617/**
2618 * @return array<int, mixed>|int|null
2619 * @refcount 1
2620 */
2621function sscanf(string $string, string $format, mixed &...$vars): array|int|null {}
2622
2623/**
2624 * @compile-time-eval
2625 * @refcount 1
2626 */
2627function str_rot13(string $string): string {}
2628
2629/** @refcount 1 */
2630function str_shuffle(string $string): string {}
2631
2632/**
2633 * @return array<int, string>|int
2634 * @refcount 1
2635 */
2636function str_word_count(string $string, int $format = 0, ?string $characters = null): array|int {}
2637
2638/**
2639 * @return array<int, string>
2640 * @compile-time-eval
2641 */
2642function str_split(string $string, int $length = 1): array {}
2643
2644/**
2645 * @compile-time-eval
2646 * @refcount 1
2647 */
2648function strpbrk(string $string, string $characters): string|false {}
2649
2650/**
2651 * @compile-time-eval
2652 */
2653function substr_compare(string $haystack, string $needle, int $offset, ?int $length = null, bool $case_insensitive = false): int {}
2654
2655/**
2656 * @compile-time-eval
2657 * @refcount 1
2658 * @deprecated
2659 */
2660function utf8_encode(string $string): string {}
2661
2662/**
2663 * @compile-time-eval
2664 * @refcount 1
2665 * @deprecated
2666 */
2667function utf8_decode(string $string): string {}
2668
2669/* dir.c */
2670
2671/**
2672 * @param resource|null $context
2673 * @return resource|false
2674 */
2675function opendir(string $directory, $context = null) {}
2676
2677/**
2678 * @param resource|null $context
2679 * @refcount 1
2680 */
2681function dir(string $directory, $context = null): Directory|false {}
2682
2683/** @param resource|null $dir_handle */
2684function closedir($dir_handle = null): void {}
2685
2686function chdir(string $directory): bool {}
2687
2688#if (defined(HAVE_CHROOT) && !defined(ZTS) && defined(ENABLE_CHROOT_FUNC))
2689function chroot(string $directory): bool {}
2690#endif
2691
2692/** @refcount 1 */
2693function getcwd(): string|false {}
2694
2695/** @param resource|null $dir_handle */
2696function rewinddir($dir_handle = null): void {}
2697
2698/**
2699 * @param resource|null $dir_handle
2700 * @refcount 1
2701 */
2702function readdir($dir_handle = null): string|false {}
2703
2704/**
2705 * @param resource|null $context
2706 * @return array<int, string>|false
2707 * @refcount 1
2708 */
2709function scandir(string $directory, int $sorting_order = SCANDIR_SORT_ASCENDING, $context = null): array|false {}
2710
2711#ifdef HAVE_GLOB
2712/**
2713 * @return array<int, string>|false
2714 * @refcount 1
2715 */
2716function glob(string $pattern, int $flags = 0): array|false {}
2717#endif
2718
2719/* exec.c */
2720
2721/**
2722 * @param array $output
2723 * @param int $result_code
2724 * @refcount 1
2725 */
2726function exec(string $command, &$output = null, &$result_code = null): string|false {}
2727
2728/**
2729 * @param int $result_code
2730 * @refcount 1
2731 */
2732function system(string $command, &$result_code = null): string|false {}
2733
2734/** @param int $result_code */
2735function passthru(string $command, &$result_code = null): false|null {}
2736
2737/** @refcount 1 */
2738function escapeshellcmd(string $command): string {}
2739
2740/** @refcount 1 */
2741function escapeshellarg(string $arg): string {}
2742
2743/** @refcount 1 */
2744function shell_exec(string $command): string|false|null {}
2745
2746#ifdef HAVE_NICE
2747function proc_nice(int $priority): bool {}
2748#endif
2749
2750/* file.c */
2751
2752/**
2753 * @param resource $stream
2754 * @param int $would_block
2755 */
2756function flock($stream, int $operation, &$would_block = null): bool {}
2757
2758/**
2759 * @return array<string, string>|false
2760 * @refcount 1
2761 */
2762function get_meta_tags(string $filename, bool $use_include_path = false): array|false {}
2763
2764/** @param resource $handle */
2765function pclose($handle): int {}
2766
2767/**
2768 * @return resource|false
2769 * @refcount 1
2770 */
2771function popen(string $command, string $mode) {}
2772
2773/** @param resource|null $context */
2774function readfile(string $filename, bool $use_include_path = false, $context = null): int|false {}
2775
2776/** @param resource $stream */
2777function rewind($stream): bool {}
2778
2779/** @param resource|null $context */
2780function rmdir(string $directory, $context = null): bool {}
2781
2782function umask(?int $mask = null): int {}
2783
2784/** @param resource $stream */
2785function fclose($stream): bool {}
2786
2787/** @param resource $stream */
2788function feof($stream): bool {}
2789
2790/** @param resource $stream */
2791function fgetc($stream): string|false {}
2792
2793/**
2794 * @param resource $stream
2795 * @refcount 1
2796 */
2797function fgets($stream, ?int $length = null): string|false {}
2798
2799/**
2800 * @param resource $stream
2801 * @refcount 1
2802 */
2803function fread($stream, int $length): string|false {}
2804
2805/**
2806 * @param resource|null $context
2807 * @return resource|false
2808 * @refcount 1
2809 */
2810function fopen(string $filename, string $mode, bool $use_include_path = false, $context = null) {}
2811
2812/**
2813 * @param resource $stream
2814 * @return array<int, mixed>|int|false|null
2815 * @refcount 1
2816 */
2817function fscanf($stream, string $format, mixed &...$vars): array|int|false|null {}
2818
2819/** @param resource $stream */
2820function fpassthru($stream): int {}
2821
2822/** @param resource $stream */
2823function ftruncate($stream, int $size): bool {}
2824
2825/**
2826 * @param resource $stream
2827 * @return array<int|string, int>|false
2828 * @refcount 1
2829 */
2830function fstat($stream): array|false {}
2831
2832/** @param resource $stream */
2833function fseek($stream, int $offset, int $whence = SEEK_SET): int {}
2834
2835/** @param resource $stream */
2836function ftell($stream): int|false {}
2837
2838/** @param resource $stream */
2839function fflush($stream): bool {}
2840
2841/** @param resource $stream */
2842function fsync($stream): bool {}
2843
2844/** @param resource $stream */
2845function fdatasync($stream): bool {}
2846
2847/** @param resource $stream */
2848function fwrite($stream, string $data, ?int $length = null): int|false {}
2849
2850/**
2851 * @param resource $stream
2852 * @alias fwrite
2853 */
2854function fputs($stream, string $data, ?int $length = null): int|false {}
2855
2856/** @param resource|null $context */
2857function mkdir(string $directory, int $permissions = 0777, bool $recursive = false, $context = null): bool {}
2858
2859/** @param resource|null $context */
2860function rename(string $from, string $to, $context = null): bool {}
2861
2862/** @param resource|null $context */
2863function copy(string $from, string $to, $context = null): bool {}
2864
2865/** @refcount 1 */
2866function tempnam(string $directory, string $prefix): string|false {}
2867
2868/**
2869 * @return resource|false
2870 * @refcount 1
2871 */
2872function tmpfile() {}
2873
2874/**
2875 * @param resource|null $context
2876 * @return array<int, string>|false
2877 * @refcount 1
2878 */
2879function file(string $filename, int $flags = 0, $context = null): array|false {}
2880
2881/**
2882 * @param resource|null $context
2883 * @refcount 1
2884 */
2885function file_get_contents(string $filename, bool $use_include_path = false, $context = null, int $offset = 0, ?int $length = null): string|false {}
2886
2887/** @param resource|null $context */
2888function unlink(string $filename, $context = null): bool {}
2889
2890/** @param resource|null $context */
2891function file_put_contents(string $filename, mixed $data, int $flags = 0, $context = null): int|false {}
2892
2893/** @param resource $stream */
2894function fputcsv($stream, array $fields, string $separator = ",", string $enclosure = "\"", string $escape = "\\", string $eol = "\n"): int|false {}
2895
2896/**
2897 * @param resource $stream
2898 * @return array<int, string|null>|false
2899 * @refcount 1
2900 */
2901function fgetcsv($stream, ?int $length = null, string $separator = ",", string $enclosure = "\"", string $escape = "\\"): array|false {}
2902
2903/** @refcount 1 */
2904function realpath(string $path): string|false {}
2905
2906#ifdef HAVE_FNMATCH
2907function fnmatch(string $pattern, string $filename, int $flags = 0): bool {}
2908#endif
2909
2910/** @refcount 1 */
2911function sys_get_temp_dir(): string {}
2912
2913/* filestat.c */
2914
2915function fileatime(string $filename): int|false {}
2916
2917function filectime(string $filename): int|false {}
2918
2919function filegroup(string $filename): int|false {}
2920
2921function fileinode(string $filename): int|false {}
2922
2923function filemtime(string $filename): int|false {}
2924
2925function fileowner(string $filename): int|false {}
2926
2927function fileperms(string $filename): int|false {}
2928
2929function filesize(string $filename): int|false {}
2930
2931/** @refcount 1 */
2932function filetype(string $filename): string|false {}
2933
2934function file_exists(string $filename): bool {}
2935
2936function is_writable(string $filename): bool {}
2937
2938/** @alias is_writable */
2939function is_writeable(string $filename): bool {}
2940
2941function is_readable(string $filename): bool {}
2942
2943function is_executable(string $filename): bool {}
2944
2945function is_file(string $filename): bool {}
2946
2947function is_dir(string $filename): bool {}
2948
2949function is_link(string $filename): bool {}
2950
2951/**
2952 * @return array<int|string, bool|int|string>|false
2953 * @refcount 1
2954 */
2955function stat(string $filename): array|false {}
2956
2957/**
2958 * @return array<int|string, bool|int|string>|false
2959 * @refcount 1
2960 */
2961function lstat(string $filename): array|false {}
2962
2963function chown(string $filename, string|int $user): bool {}
2964
2965function chgrp(string $filename, string|int $group): bool {}
2966
2967#ifdef HAVE_LCHOWN
2968function lchown(string $filename, string|int $user): bool {}
2969
2970function lchgrp(string $filename, string|int $group): bool {}
2971#endif
2972
2973function chmod(string $filename, int $permissions): bool {}
2974
2975#ifdef HAVE_UTIME
2976function touch(string $filename, ?int $mtime = null, ?int $atime = null): bool {}
2977#endif
2978
2979function clearstatcache(bool $clear_realpath_cache = false, string $filename = ""): void {}
2980
2981function disk_total_space(string $directory): float|false {}
2982
2983function disk_free_space(string $directory): float|false {}
2984
2985/** @alias disk_free_space */
2986function diskfreespace(string $directory): float|false {}
2987
2988/**
2989 * @return array<string, array>
2990 * @refcount 1
2991 */
2992function realpath_cache_get(): array {}
2993
2994function realpath_cache_size(): int {}
2995
2996/* formatted_print.c */
2997
2998/** @refcount 1 */
2999function sprintf(string $format, mixed ...$values): string {}
3000
3001function printf(string $format, mixed ...$values): int {}
3002
3003function vprintf(string $format, array $values): int {}
3004
3005/** @refcount 1 */
3006function vsprintf(string $format, array $values): string {}
3007
3008/** @param resource $stream */
3009function fprintf($stream, string $format, mixed ...$values): int {}
3010
3011/** @param resource $stream */
3012function vfprintf($stream, string $format, array $values): int {}
3013
3014/* fsock.c */
3015
3016/**
3017 * @param int $error_code
3018 * @param string $error_message
3019 * @return resource|false
3020 * @refcount 1
3021 */
3022function fsockopen(string $hostname, int $port = -1, &$error_code = null, &$error_message = null, ?float $timeout = null) {}
3023
3024/**
3025 * @param int $error_code
3026 * @param string $error_message
3027 * @return resource|false
3028 */
3029function pfsockopen(string $hostname, int $port = -1, &$error_code = null, &$error_message = null, ?float $timeout = null) {}
3030
3031/* http.c */
3032
3033/** @refcount 1 */
3034function http_build_query(array|object $data, string $numeric_prefix = "", ?string $arg_separator = null, int $encoding_type = PHP_QUERY_RFC1738): string {}
3035
3036function http_get_last_response_headers(): ?array {}
3037
3038function http_clear_last_response_headers(): void {}
3039
3040/**
3041 * @param array|null $options
3042 * @return array<int, array>
3043 * @refcount 1
3044 */
3045function request_parse_body(?array $options = null): array {}
3046
3047/* image.c */
3048
3049/**
3050 * @compile-time-eval
3051 * @refcount 1
3052 */
3053function image_type_to_mime_type(int $image_type): string {}
3054
3055/**
3056 * @compile-time-eval
3057 * @refcount 1
3058 */
3059function image_type_to_extension(int $image_type, bool $include_dot = true): string|false {}
3060
3061/**
3062 * @param array $image_info
3063 * @return array<int|string, int|string>|false
3064 * @refcount 1
3065 */
3066function getimagesize(string $filename, &$image_info = null): array|false {}
3067
3068/**
3069 * @param array $image_info
3070 * @return array<int|string, int|string>|false
3071 * @refcount 1
3072 */
3073function getimagesizefromstring(string $string, &$image_info = null): array|false {}
3074
3075/* info.c */
3076
3077function phpinfo(int $flags = INFO_ALL): true {} // make return type void
3078
3079/**
3080 * @compile-time-eval
3081 * @refcount 1
3082 */
3083function phpversion(?string $extension = null): string|false {}
3084
3085function phpcredits(int $flags = CREDITS_ALL): true {}
3086
3087/**
3088 * @compile-time-eval
3089 * @refcount 1
3090 */
3091function php_sapi_name(): string|false {}
3092
3093/**
3094 * @compile-time-eval
3095 * @refcount 1
3096 */
3097function php_uname(string $mode = "a"): string {}
3098
3099/** @refcount 1 */
3100function php_ini_scanned_files(): string|false {}
3101
3102/** @refcount 1 */
3103function php_ini_loaded_file(): string|false {}
3104
3105/* iptc.c */
3106
3107/** @refcount 1 */
3108function iptcembed(string $iptc_data, string $filename, int $spool = 0): string|bool {}
3109
3110/**
3111 * @return array<string, array>|false
3112 * @refcount 1
3113 */
3114function iptcparse(string $iptc_block): array|false {}
3115
3116/* levenshtein.c */
3117
3118function levenshtein(string $string1, string $string2, int $insertion_cost = 1, int $replacement_cost = 1, int $deletion_cost = 1): int {}
3119
3120/* link.c */
3121
3122#if (defined(HAVE_SYMLINK) || defined(PHP_WIN32))
3123/** @refcount 1 */
3124function readlink(string $path): string|false {}
3125
3126function linkinfo(string $path): int|false {}
3127
3128function symlink(string $target, string $link): bool {}
3129
3130function link(string $target, string $link): bool {}
3131#endif
3132
3133/* mail.c */
3134
3135function mail(string $to, string $subject, string $message, array|string $additional_headers = [], string $additional_params = ""): bool {}
3136
3137/* math.c */
3138
3139/** @compile-time-eval */
3140function abs(int|float $num): int|float {}
3141
3142/** @compile-time-eval */
3143function ceil(int|float $num): float {}
3144
3145/** @compile-time-eval */
3146function floor(int|float $num): float {}
3147
3148/** @compile-time-eval */
3149function round(int|float $num, int $precision = 0, int $mode = PHP_ROUND_HALF_UP): float {}
3150
3151/** @compile-time-eval */
3152function sin(float $num): float {}
3153
3154/** @compile-time-eval */
3155function cos(float $num): float {}
3156
3157/** @compile-time-eval */
3158function tan(float $num): float {}
3159
3160/** @compile-time-eval */
3161function asin(float $num): float {}
3162
3163/** @compile-time-eval */
3164function acos(float $num): float {}
3165
3166/** @compile-time-eval */
3167function atan(float $num): float {}
3168
3169/** @compile-time-eval */
3170function atanh(float $num): float {}
3171
3172/** @compile-time-eval */
3173function atan2(float $y, float $x): float {}
3174
3175/** @compile-time-eval */
3176function sinh(float $num): float {}
3177
3178/** @compile-time-eval */
3179function cosh(float $num): float {}
3180
3181/** @compile-time-eval */
3182function tanh(float $num): float {}
3183
3184/** @compile-time-eval */
3185function asinh(float $num): float {}
3186
3187/** @compile-time-eval */
3188function acosh(float $num): float {}
3189
3190/** @compile-time-eval */
3191function expm1(float $num): float {}
3192
3193/** @compile-time-eval */
3194function log1p(float $num): float {}
3195
3196/** @compile-time-eval */
3197function pi(): float {}
3198
3199/** @compile-time-eval */
3200function is_finite(float $num): bool {}
3201
3202/** @compile-time-eval */
3203function is_nan(float $num): bool {}
3204
3205/** @compile-time-eval */
3206function intdiv(int $num1, int $num2): int {}
3207
3208/** @compile-time-eval */
3209function is_infinite(float $num): bool {}
3210
3211/** @compile-time-eval */
3212function pow(mixed $num, mixed $exponent): int|float|object {}
3213
3214/** @compile-time-eval */
3215function exp(float $num): float {}
3216
3217/** @compile-time-eval */
3218function log(float $num, float $base = M_E): float {}
3219
3220/** @compile-time-eval */
3221function log10(float $num): float {}
3222
3223/** @compile-time-eval */
3224function sqrt(float $num): float {}
3225
3226/** @compile-time-eval */
3227function hypot(float $x, float $y): float {}
3228
3229/** @compile-time-eval */
3230function deg2rad(float $num): float {}
3231
3232/** @compile-time-eval */
3233function rad2deg(float $num): float {}
3234
3235/** @compile-time-eval */
3236function bindec(string $binary_string): int|float {}
3237
3238/** @compile-time-eval */
3239function hexdec(string $hex_string): int|float {}
3240
3241/** @compile-time-eval */
3242function octdec(string $octal_string): int|float {}
3243
3244/**
3245 * @compile-time-eval
3246 * @refcount 1
3247 */
3248function decbin(int $num): string {}
3249
3250/**
3251 * @compile-time-eval
3252 * @refcount 1
3253 */
3254function decoct(int $num): string {}
3255
3256/**
3257 * @compile-time-eval
3258 * @refcount 1
3259 * @frameless-function {"arity": 1}
3260 */
3261function dechex(int $num): string {}
3262
3263/**
3264 * @compile-time-eval
3265 * @refcount 1
3266 */
3267function base_convert(string $num, int $from_base, int $to_base): string {}
3268
3269/**
3270 * @compile-time-eval
3271 * @refcount 1
3272 */
3273function number_format(float $num, int $decimals = 0, ?string $decimal_separator = ".", ?string $thousands_separator = ","): string {}
3274
3275/**
3276 * @compile-time-eval
3277 */
3278function fmod(float $num1, float $num2): float {}
3279
3280/**
3281 * @compile-time-eval
3282 */
3283function fdiv(float $num1, float $num2): float {}
3284
3285/**
3286 * @compile-time-eval
3287 */
3288function fpow(float $num1, float $num2): float {}
3289
3290/* microtime.c */
3291
3292#ifdef HAVE_GETTIMEOFDAY
3293/** @refcount 1 */
3294function microtime(bool $as_float = false): string|float {}
3295
3296/**
3297 * @return array<string, int>|float
3298 * @refcount 1
3299 */
3300function gettimeofday(bool $as_float = false): array|float {}
3301#endif
3302
3303#ifdef HAVE_GETRUSAGE
3304/**
3305 * @return array<string, int>|false
3306 * @refcount 1
3307 */
3308function getrusage(int $mode = 0): array|false {}
3309#endif
3310
3311/* pack.c */
3312
3313/**
3314 * @compile-time-eval
3315 * @refcount 1
3316 */
3317function pack(string $format, mixed ...$values): string {}
3318
3319/**
3320 * @return array<int|string, mixed>|false
3321 * @compile-time-eval
3322 * @refcount 1
3323 */
3324function unpack(string $format, string $string, int $offset = 0): array|false {}
3325
3326/* password.c */
3327
3328/**
3329 * @return array<string, string|array|null>
3330 * @refcount 1
3331 */
3332function password_get_info(string $hash): array {}
3333
3334/**
3335 * @refcount 1
3336 */
3337function password_hash(#[\SensitiveParameter] string $password, string|int|null $algo, array $options = []): string {}
3338
3339function password_needs_rehash(string $hash, string|int|null $algo, array $options = []): bool {}
3340
3341function password_verify(#[\SensitiveParameter] string $password, string $hash): bool {}
3342
3343/**
3344 * @compile-time-eval
3345 */
3346function password_algos(): array {}
3347
3348/* proc_open.c */
3349
3350#ifdef PHP_CAN_SUPPORT_PROC_OPEN
3351/**
3352 * @param array $pipes
3353 * @return resource|false
3354 * @refcount 1
3355 */
3356function proc_open(array|string $command, array $descriptor_spec, &$pipes, ?string $cwd = null, ?array $env_vars = null, ?array $options = null) {}
3357
3358/** @param resource $process */
3359function proc_close($process): int {}
3360
3361/** @param resource $process */
3362function proc_terminate($process, int $signal = 15): bool {}
3363
3364/**
3365 * @param resource $process
3366 * @return array<string, bool|int|string>
3367 * @refcount 1
3368 */
3369function proc_get_status($process): array {}
3370#endif
3371
3372/* quot_print.c */
3373
3374/**
3375 * @compile-time-eval
3376 * @refcount 1
3377 */
3378function quoted_printable_decode(string $string): string {}
3379
3380/**
3381 * @compile-time-eval
3382 * @refcount 1
3383 */
3384function quoted_printable_encode(string $string): string {}
3385
3386/* soundex.c */
3387
3388/** @refcount 1 */
3389function soundex(string $string): string {}
3390
3391/* streamsfuncs.c */
3392
3393function stream_select(?array &$read, ?array &$write, ?array &$except, ?int $seconds, ?int $microseconds = null): int|false {}
3394
3395/**
3396 * @return resource
3397 * @refcount 1
3398 */
3399function stream_context_create(?array $options = null, ?array $params = null) {}
3400
3401/** @param resource $context */
3402function stream_context_set_params($context, array $params): true {}
3403
3404/**
3405 * @param resource $context
3406 * @return array<string, mixed>
3407 * @refcount 1
3408 */
3409function stream_context_get_params($context): array {}
3410
3411/** @param resource $context */
3412function stream_context_set_option($context, array|string $wrapper_or_options, ?string $option_name = null, mixed $value = UNKNOWN): true {}
3413
3414/** @param resource $context */
3415function stream_context_set_options($context, array $options): true {}
3416
3417/**
3418 * @param resource $stream_or_context
3419 * @return array<string, mixed>
3420 */
3421function stream_context_get_options($stream_or_context): array {}
3422
3423/** @return resource */
3424function stream_context_get_default(?array $options = null) {}
3425
3426/** @return resource */
3427function stream_context_set_default(array $options) {}
3428
3429/**
3430 * @param resource $stream
3431 * @return resource|false
3432 */
3433function stream_filter_prepend($stream, string $filter_name, int $mode = 0, mixed $params = UNKNOWN) {}
3434
3435/**
3436 * @param resource $stream
3437 * @return resource|false
3438 */
3439function stream_filter_append($stream, string $filter_name, int $mode = 0, mixed $params = UNKNOWN) {}
3440
3441/** @param resource $stream_filter */
3442function stream_filter_remove($stream_filter): bool {}
3443
3444/**
3445 * @param int $error_code
3446 * @param string $error_message
3447 * @param resource|null $context
3448 * @return resource|false
3449 * @refcount 1
3450 */
3451function stream_socket_client(string $address, &$error_code = null, &$error_message = null, ?float $timeout = null, int $flags = STREAM_CLIENT_CONNECT, $context = null) {}
3452
3453/**
3454 * @param int $error_code
3455 * @param string $error_message
3456 * @param resource|null $context
3457 * @return resource|false
3458 * @refcount 1
3459 */
3460function stream_socket_server(string $address, &$error_code = null, &$error_message = null, int $flags = STREAM_SERVER_BIND | STREAM_SERVER_LISTEN, $context = null) {}
3461
3462/**
3463 * @param resource $socket
3464 * @param string $peer_name
3465 * @return resource|false
3466 * @refcount 1
3467 */
3468function stream_socket_accept($socket, ?float $timeout = null, &$peer_name = null) {}
3469
3470/** @param resource $socket */
3471function stream_socket_get_name($socket, bool $remote): string|false {}
3472
3473/**
3474 * @param resource $socket
3475 * @param string|null $address
3476 * @refcount 1
3477 */
3478function stream_socket_recvfrom($socket, int $length, int $flags = 0, &$address = null): string|false {}
3479
3480/** @param resource $socket */
3481function stream_socket_sendto($socket, string $data, int $flags = 0, string $address = ""): int|false {}
3482
3483/**
3484 * @param resource $stream
3485 * @param resource|null $session_stream
3486 */
3487function stream_socket_enable_crypto($stream, bool $enable, ?int $crypto_method = null, $session_stream = null): int|bool {}
3488
3489#ifdef HAVE_SHUTDOWN
3490/** @param resource $stream */
3491function stream_socket_shutdown($stream, int $mode): bool {}
3492#endif
3493
3494#ifdef HAVE_SOCKETPAIR
3495/**
3496 * @return array<int, resource>|false
3497 * @refcount 1
3498 */
3499function stream_socket_pair(int $domain, int $type, int $protocol): array|false {}
3500#endif
3501
3502/**
3503 * @param resource $from
3504 * @param resource $to
3505 */
3506function stream_copy_to_stream($from, $to, ?int $length = null, int $offset = 0): int|false {}
3507
3508/**
3509 * @param resource $stream
3510 * @refcount 1
3511 */
3512function stream_get_contents($stream, ?int $length = null, int $offset = -1): string|false {}
3513
3514/** @param resource $stream */
3515function stream_supports_lock($stream): bool {}
3516
3517/** @param resource $stream */
3518function stream_set_write_buffer($stream, int $size): int {}
3519
3520/**
3521 * @param resource $stream
3522 * @alias stream_set_write_buffer
3523 */
3524function set_file_buffer($stream, int $size): int {}
3525
3526/** @param resource $stream */
3527function stream_set_read_buffer($stream, int $size): int {}
3528
3529/** @param resource $stream */
3530function stream_set_blocking($stream, bool $enable): bool {}
3531
3532/**
3533 * @param resource $stream
3534 * @alias stream_set_blocking
3535 */
3536function socket_set_blocking($stream, bool $enable): bool {}
3537
3538/**
3539 * @param resource $stream
3540 * @return array<string, mixed>
3541 */
3542function stream_get_meta_data($stream): array {}
3543
3544/**
3545 * @param resource $stream
3546 * @return array<string, mixed>
3547 * @alias stream_get_meta_data
3548 */
3549function socket_get_status($stream): array {}
3550
3551/**
3552 * @param resource $stream
3553 * @refcount 1
3554 */
3555function stream_get_line($stream, int $length, string $ending = ""): string|false {}
3556
3557/** @refcount 1 */
3558function stream_resolve_include_path(string $filename): string|false {}
3559
3560/**
3561 * @return array<int, string>
3562 * @refcount 1
3563 */
3564function stream_get_wrappers(): array {}
3565
3566/**
3567 * @return array<int, string>
3568 * @refcount 1
3569 */
3570function stream_get_transports(): array {}
3571
3572/** @param resource|string $stream */
3573function stream_is_local($stream): bool {}
3574
3575/** @param resource $stream */
3576function stream_isatty($stream): bool {}
3577
3578#ifdef PHP_WIN32
3579/** @param resource $stream */
3580function sapi_windows_vt100_support($stream, ?bool $enable = null): bool {}
3581#endif
3582
3583/** @param resource $stream */
3584function stream_set_chunk_size($stream, int $size): int {}
3585
3586#if (defined(HAVE_SYS_TIME_H) || defined(PHP_WIN32))
3587/** @param resource $stream */
3588function stream_set_timeout($stream, int $seconds, int $microseconds = 0): bool {}
3589
3590/**
3591 * @param resource $stream
3592 * @alias stream_set_timeout
3593 */
3594function socket_set_timeout($stream, int $seconds, int $microseconds = 0): bool {}
3595#endif
3596
3597/* type.c */
3598
3599/**
3600 * @compile-time-eval
3601 */
3602function gettype(mixed $value): string {}
3603
3604/**
3605 * @compile-time-eval
3606 */
3607function get_debug_type(mixed $value): string {}
3608
3609function settype(mixed &$var, string $type): bool {}
3610
3611/**
3612 * @compile-time-eval
3613 */
3614function intval(mixed $value, int $base = 10): int {}
3615
3616/**
3617 * @compile-time-eval
3618 */
3619function floatval(mixed $value): float {}
3620
3621/** @alias floatval */
3622function doubleval(mixed $value): float {}
3623
3624/**
3625 * @compile-time-eval
3626 */
3627function boolval(mixed $value): bool {}
3628
3629/**
3630 * @compile-time-eval
3631 */
3632function strval(mixed $value): string {}
3633
3634/**
3635 * @compile-time-eval
3636 */
3637function is_null(mixed $value): bool {}
3638
3639/**
3640 * @compile-time-eval
3641 */
3642function is_resource(mixed $value): bool {}
3643
3644/**
3645 * @compile-time-eval
3646 */
3647function is_bool(mixed $value): bool {}
3648
3649/**
3650 * @compile-time-eval
3651 */
3652function is_int(mixed $value): bool {}
3653
3654/** @alias is_int */
3655function is_integer(mixed $value): bool {}
3656
3657/** @alias is_int */
3658function is_long(mixed $value): bool {}
3659
3660/**
3661 * @compile-time-eval
3662 */
3663function is_float(mixed $value): bool {}
3664
3665/** @alias is_float */
3666function is_double(mixed $value): bool {}
3667
3668/**
3669 * @compile-time-eval
3670 * @frameless-function {"arity": 1}
3671 */
3672function is_numeric(mixed $value): bool {}
3673
3674/**
3675 * @compile-time-eval
3676 */
3677function is_string(mixed $value): bool {}
3678
3679/**
3680 * @compile-time-eval
3681 */
3682function is_array(mixed $value): bool {}
3683
3684/**
3685 * @compile-time-eval
3686 */
3687function is_object(mixed $value): bool {}
3688
3689/**
3690 * @compile-time-eval
3691 */
3692function is_scalar(mixed $value): bool {}
3693
3694/** @param string $callable_name */
3695function is_callable(mixed $value, bool $syntax_only = false, &$callable_name = null): bool {}
3696
3697/**
3698 * @compile-time-eval
3699 */
3700function is_iterable(mixed $value): bool {}
3701
3702/**
3703 * @compile-time-eval
3704 */
3705function is_countable(mixed $value): bool {}
3706
3707/* uniqid.c */
3708
3709#ifdef HAVE_GETTIMEOFDAY
3710/** @refcount 1 */
3711function uniqid(string $prefix = "", bool $more_entropy = false): string {}
3712#endif
3713
3714/* url.c */
3715
3716/**
3717 * @return int|string|array<string, int|string>|null|false
3718 * @compile-time-eval
3719 * @refcount 1
3720 */
3721function parse_url(string $url, int $component = -1): int|string|array|null|false {}
3722
3723/**
3724 * @compile-time-eval
3725 * @refcount 1
3726 */
3727function urlencode(string $string): string {}
3728
3729/**
3730 * @compile-time-eval
3731 * @refcount 1
3732 */
3733function urldecode(string $string): string {}
3734
3735/**
3736 * @compile-time-eval
3737 * @refcount 1
3738 */
3739function rawurlencode(string $string): string {}
3740
3741/**
3742 * @compile-time-eval
3743 * @refcount 1
3744 */
3745function rawurldecode(string $string): string {}
3746
3747/**
3748 * @param resource|null $context
3749 * @return array<int|string, string|array>|false
3750 * @refcount 1
3751 */
3752function get_headers(string $url, bool $associative = false, $context = null): array|false {}
3753
3754/* user_filters.c */
3755
3756/**
3757 * @param resource $brigade
3758 * @refcount 1
3759 */
3760function stream_bucket_make_writeable($brigade): ?StreamBucket {}
3761
3762/** @param resource $brigade */
3763function stream_bucket_prepend($brigade, StreamBucket $bucket): void {}
3764
3765/** @param resource $brigade */
3766function stream_bucket_append($brigade, StreamBucket $bucket): void {}
3767
3768/**
3769 * @param resource $stream
3770 * @refcount 1
3771 */
3772function stream_bucket_new($stream, string $buffer): StreamBucket {}
3773
3774/**
3775 * @return array<int, string>
3776 * @refcount 1
3777 */
3778function stream_get_filters(): array {}
3779
3780function stream_filter_register(string $filter_name, string $class): bool {}
3781
3782/* uuencode.c */
3783
3784/**
3785 * @compile-time-eval
3786 * @refcount 1
3787 */
3788function convert_uuencode(string $string): string {}
3789
3790/**
3791 * @compile-time-eval
3792 * @refcount 1
3793 */
3794function convert_uudecode(string $string): string|false {}
3795
3796/* var.c */
3797
3798function var_dump(mixed $value, mixed ...$values): void {}
3799
3800/** @refcount 1 */
3801function var_export(mixed $value, bool $return = false): ?string {}
3802
3803function debug_zval_dump(mixed $value, mixed ...$values): void {}
3804
3805/**
3806 * @compile-time-eval
3807 * @refcount 1
3808 */
3809function serialize(mixed $value): string {}
3810
3811function unserialize(string $data, array $options = []): mixed {}
3812
3813function memory_get_usage(bool $real_usage = false): int {}
3814
3815function memory_get_peak_usage(bool $real_usage = false): int {}
3816
3817function memory_reset_peak_usage(): void {}
3818
3819/* versioning.c */
3820
3821/** @compile-time-eval */
3822function version_compare(string $version1, string $version2, ?string $operator = null): int|bool {}
3823
3824/* win32/codepage.c */
3825
3826#ifdef PHP_WIN32
3827function sapi_windows_cp_set(int $codepage): bool {}
3828
3829function sapi_windows_cp_get(string $kind = ""): int {}
3830
3831function sapi_windows_cp_conv(int|string $in_codepage, int|string $out_codepage, string $subject): ?string {}
3832
3833function sapi_windows_cp_is_utf8(): bool {}
3834
3835function sapi_windows_set_ctrl_handler(?callable $handler, bool $add = true): bool {}
3836
3837function sapi_windows_generate_ctrl_event(int $event, int $pid = 0): bool {}
3838#endif
3839