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