3v4l.org

run code in 300+ PHP versions simultaneously
<?php spl_autoload_register(function($class){ if ($class === 'A') { eval("class A { }"); } }); class B extends A { } print_r(array_reverse(get_declared_classes()));
Output for git.master, git.master_jit
Array ( [0] => A [1] => B [2] => IntlChar [3] => UConverter [4] => IntlPartsIterator [5] => IntlCodePointBreakIterator [6] => IntlRuleBasedBreakIterator [7] => IntlBreakIterator [8] => IntlIterator [9] => IntlException [10] => Spoofchecker [11] => IntlGregorianCalendar [12] => IntlCalendar [13] => IntlTimeZone [14] => Transliterator [15] => ResourceBundle [16] => IntlDatePatternGenerator [17] => IntlDateFormatter [18] => MessageFormatter [19] => Locale [20] => Normalizer [21] => NumberFormatter [22] => Collator [23] => GMP [24] => XMLWriter [25] => XMLReader [26] => XMLParser [27] => PhpToken [28] => PharFileInfo [29] => PharData [30] => Phar [31] => PharException [32] => SimpleXMLIterator [33] => SimpleXMLElement [34] => Directory [35] => php_user_filter [36] => AssertionError [37] => __PHP_Incomplete_Class [38] => ReflectionFiber [39] => ReflectionEnumBackedCase [40] => ReflectionEnumUnitCase [41] => ReflectionEnum [42] => ReflectionAttribute [43] => ReflectionReference [44] => ReflectionZendExtension [45] => ReflectionExtension [46] => ReflectionClassConstant [47] => ReflectionProperty [48] => ReflectionObject [49] => ReflectionClass [50] => ReflectionMethod [51] => ReflectionIntersectionType [52] => ReflectionUnionType [53] => ReflectionNamedType [54] => ReflectionType [55] => ReflectionParameter [56] => ReflectionGenerator [57] => ReflectionFunction [58] => ReflectionFunctionAbstract [59] => Reflection [60] => ReflectionException [61] => Random\Randomizer [62] => Random\Engine\Secure [63] => Random\Engine\Xoshiro256StarStar [64] => Random\Engine\PcgOneseq128XslRr64 [65] => Random\Engine\Mt19937 [66] => Random\RandomException [67] => Random\BrokenRandomEngineError [68] => Random\RandomError [69] => SessionHandler [70] => PDORow [71] => PDOStatement [72] => PDO [73] => PDOException [74] => MultipleIterator [75] => SplObjectStorage [76] => SplFixedArray [77] => SplPriorityQueue [78] => SplMaxHeap [79] => SplMinHeap [80] => SplHeap [81] => SplStack [82] => SplQueue [83] => SplDoublyLinkedList [84] => SplTempFileObject [85] => SplFileObject [86] => GlobIterator [87] => RecursiveDirectoryIterator [88] => FilesystemIterator [89] => DirectoryIterator [90] => SplFileInfo [91] => RecursiveArrayIterator [92] => ArrayIterator [93] => ArrayObject [94] => RecursiveTreeIterator [95] => EmptyIterator [96] => RecursiveRegexIterator [97] => RegexIterator [98] => InfiniteIterator [99] => AppendIterator [100] => NoRewindIterator [101] => RecursiveCachingIterator [102] => CachingIterator [103] => LimitIterator [104] => ParentIterator [105] => RecursiveCallbackFilterIterator [106] => CallbackFilterIterator [107] => RecursiveFilterIterator [108] => FilterIterator [109] => IteratorIterator [110] => RecursiveIteratorIterator [111] => UnexpectedValueException [112] => UnderflowException [113] => RangeException [114] => OverflowException [115] => OutOfBoundsException [116] => RuntimeException [117] => OutOfRangeException [118] => LengthException [119] => InvalidArgumentException [120] => DomainException [121] => BadMethodCallException [122] => BadFunctionCallException [123] => LogicException [124] => JsonException [125] => HashContext [126] => finfo [127] => DOMXPath [128] => DOMProcessingInstruction [129] => DOMEntityReference [130] => DOMEntity [131] => DOMNotation [132] => DOMDocumentType [133] => DOMCdataSection [134] => DOMComment [135] => DOMText [136] => DOMElement [137] => DOMAttr [138] => DOMCharacterData [139] => DOMNamedNodeMap [140] => DOMNodeList [141] => DOMDocument [142] => DOMDocumentFragment [143] => DOMNameSpaceNode [144] => DOMNode [145] => DOMImplementation [146] => DOMException [147] => DeflateContext [148] => InflateContext [149] => SQLite3Result [150] => SQLite3Stmt [151] => SQLite3 [152] => LibXMLError [153] => DatePeriod [154] => DateInterval [155] => DateTimeZone [156] => DateTimeImmutable [157] => DateTime [158] => stdClass [159] => FiberError [160] => Fiber [161] => SensitiveParameterValue [162] => SensitiveParameter [163] => AllowDynamicProperties [164] => ReturnTypeWillChange [165] => Attribute [166] => WeakMap [167] => WeakReference [168] => ClosedGeneratorException [169] => Generator [170] => Closure [171] => UnhandledMatchError [172] => DivisionByZeroError [173] => ArithmeticError [174] => ValueError [175] => ArgumentCountError [176] => TypeError [177] => ParseError [178] => CompileError [179] => Error [180] => ErrorException [181] => Exception [182] => InternalIterator )
Output for rfc.property-hooks
Array ( [0] => A [1] => B [2] => IntlChar [3] => UConverter [4] => IntlPartsIterator [5] => IntlCodePointBreakIterator [6] => IntlRuleBasedBreakIterator [7] => IntlBreakIterator [8] => IntlIterator [9] => IntlException [10] => Spoofchecker [11] => IntlGregorianCalendar [12] => IntlCalendar [13] => IntlTimeZone [14] => Transliterator [15] => ResourceBundle [16] => IntlDatePatternGenerator [17] => IntlDateFormatter [18] => MessageFormatter [19] => Locale [20] => Normalizer [21] => NumberFormatter [22] => Collator [23] => GMP [24] => XMLWriter [25] => XMLReader [26] => XMLParser [27] => PhpToken [28] => PharFileInfo [29] => PharData [30] => Phar [31] => PharException [32] => SimpleXMLIterator [33] => SimpleXMLElement [34] => Directory [35] => php_user_filter [36] => AssertionError [37] => __PHP_Incomplete_Class [38] => ReflectionFiber [39] => ReflectionEnumBackedCase [40] => ReflectionEnumUnitCase [41] => ReflectionEnum [42] => ReflectionAttribute [43] => ReflectionReference [44] => ReflectionZendExtension [45] => ReflectionExtension [46] => ReflectionClassConstant [47] => ReflectionProperty [48] => ReflectionObject [49] => ReflectionClass [50] => ReflectionMethod [51] => ReflectionIntersectionType [52] => ReflectionUnionType [53] => ReflectionNamedType [54] => ReflectionType [55] => ReflectionParameter [56] => ReflectionGenerator [57] => ReflectionFunction [58] => ReflectionFunctionAbstract [59] => Reflection [60] => ReflectionException [61] => Random\IntervalBoundary [62] => Random\Randomizer [63] => Random\Engine\Secure [64] => Random\Engine\Xoshiro256StarStar [65] => Random\Engine\PcgOneseq128XslRr64 [66] => Random\Engine\Mt19937 [67] => Random\RandomException [68] => Random\BrokenRandomEngineError [69] => Random\RandomError [70] => SessionHandler [71] => PDORow [72] => PDOStatement [73] => PDO [74] => PDOException [75] => MultipleIterator [76] => SplObjectStorage [77] => SplFixedArray [78] => SplPriorityQueue [79] => SplMaxHeap [80] => SplMinHeap [81] => SplHeap [82] => SplStack [83] => SplQueue [84] => SplDoublyLinkedList [85] => SplTempFileObject [86] => SplFileObject [87] => GlobIterator [88] => RecursiveDirectoryIterator [89] => FilesystemIterator [90] => DirectoryIterator [91] => SplFileInfo [92] => RecursiveArrayIterator [93] => ArrayIterator [94] => ArrayObject [95] => RecursiveTreeIterator [96] => EmptyIterator [97] => RecursiveRegexIterator [98] => RegexIterator [99] => InfiniteIterator [100] => AppendIterator [101] => NoRewindIterator [102] => RecursiveCachingIterator [103] => CachingIterator [104] => LimitIterator [105] => ParentIterator [106] => RecursiveCallbackFilterIterator [107] => CallbackFilterIterator [108] => RecursiveFilterIterator [109] => FilterIterator [110] => IteratorIterator [111] => RecursiveIteratorIterator [112] => UnexpectedValueException [113] => UnderflowException [114] => RangeException [115] => OverflowException [116] => OutOfBoundsException [117] => RuntimeException [118] => OutOfRangeException [119] => LengthException [120] => InvalidArgumentException [121] => DomainException [122] => BadMethodCallException [123] => BadFunctionCallException [124] => LogicException [125] => JsonException [126] => HashContext [127] => finfo [128] => DOMXPath [129] => DOMProcessingInstruction [130] => DOMEntityReference [131] => DOMEntity [132] => DOMNotation [133] => DOMDocumentType [134] => DOMCdataSection [135] => DOMComment [136] => DOMText [137] => DOMElement [138] => DOMAttr [139] => DOMCharacterData [140] => DOMNamedNodeMap [141] => DOMNodeList [142] => DOMDocument [143] => DOMDocumentFragment [144] => DOMNameSpaceNode [145] => DOMNode [146] => DOMImplementation [147] => DOMException [148] => DeflateContext [149] => InflateContext [150] => SQLite3Result [151] => SQLite3Stmt [152] => SQLite3 [153] => LibXMLError [154] => DateMalformedPeriodStringException [155] => DateMalformedIntervalStringException [156] => DateMalformedStringException [157] => DateInvalidOperationException [158] => DateInvalidTimeZoneException [159] => DateException [160] => DateRangeError [161] => DateObjectError [162] => DateError [163] => DatePeriod [164] => DateInterval [165] => DateTimeZone [166] => DateTimeImmutable [167] => DateTime [168] => stdClass [169] => FiberError [170] => Fiber [171] => SensitiveParameterValue [172] => SensitiveParameter [173] => AllowDynamicProperties [174] => ReturnTypeWillChange [175] => Attribute [176] => WeakMap [177] => WeakReference [178] => ClosedGeneratorException [179] => Generator [180] => Closure [181] => UnhandledMatchError [182] => DivisionByZeroError [183] => ArithmeticError [184] => ValueError [185] => ArgumentCountError [186] => TypeError [187] => ParseError [188] => CompileError [189] => Error [190] => ErrorException [191] => Exception [192] => InternalIterator )

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
60.7 ms | 412 KiB | 8 Q