3v4l.org

run code in 300+ PHP versions simultaneously
<?php $foo = new ArrayIterator(get_declared_classes()); $bar = new IteratorIterator($foo); foreach($bar as $class) { echo $class . ' - ' . $bar->getInnerIterator()->current() . PHP_EOL; }
Output for git.master, git.master_jit
InternalIterator - InternalIterator Exception - Exception ErrorException - ErrorException Error - Error CompileError - CompileError ParseError - ParseError TypeError - TypeError ArgumentCountError - ArgumentCountError ValueError - ValueError ArithmeticError - ArithmeticError DivisionByZeroError - DivisionByZeroError UnhandledMatchError - UnhandledMatchError Closure - Closure Generator - Generator ClosedGeneratorException - ClosedGeneratorException WeakReference - WeakReference WeakMap - WeakMap Attribute - Attribute ReturnTypeWillChange - ReturnTypeWillChange AllowDynamicProperties - AllowDynamicProperties SensitiveParameter - SensitiveParameter SensitiveParameterValue - SensitiveParameterValue Fiber - Fiber FiberError - FiberError stdClass - stdClass DateTime - DateTime DateTimeImmutable - DateTimeImmutable DateTimeZone - DateTimeZone DateInterval - DateInterval DatePeriod - DatePeriod LibXMLError - LibXMLError SQLite3 - SQLite3 SQLite3Stmt - SQLite3Stmt SQLite3Result - SQLite3Result InflateContext - InflateContext DeflateContext - DeflateContext DOMException - DOMException DOMImplementation - DOMImplementation DOMNode - DOMNode DOMNameSpaceNode - DOMNameSpaceNode DOMDocumentFragment - DOMDocumentFragment DOMDocument - DOMDocument DOMNodeList - DOMNodeList DOMNamedNodeMap - DOMNamedNodeMap DOMCharacterData - DOMCharacterData DOMAttr - DOMAttr DOMElement - DOMElement DOMText - DOMText DOMComment - DOMComment DOMCdataSection - DOMCdataSection DOMDocumentType - DOMDocumentType DOMNotation - DOMNotation DOMEntity - DOMEntity DOMEntityReference - DOMEntityReference DOMProcessingInstruction - DOMProcessingInstruction DOMXPath - DOMXPath finfo - finfo HashContext - HashContext JsonException - JsonException LogicException - LogicException BadFunctionCallException - BadFunctionCallException BadMethodCallException - BadMethodCallException DomainException - DomainException InvalidArgumentException - InvalidArgumentException LengthException - LengthException OutOfRangeException - OutOfRangeException RuntimeException - RuntimeException OutOfBoundsException - OutOfBoundsException OverflowException - OverflowException RangeException - RangeException UnderflowException - UnderflowException UnexpectedValueException - UnexpectedValueException RecursiveIteratorIterator - RecursiveIteratorIterator IteratorIterator - IteratorIterator FilterIterator - FilterIterator RecursiveFilterIterator - RecursiveFilterIterator CallbackFilterIterator - CallbackFilterIterator RecursiveCallbackFilterIterator - RecursiveCallbackFilterIterator ParentIterator - ParentIterator LimitIterator - LimitIterator CachingIterator - CachingIterator RecursiveCachingIterator - RecursiveCachingIterator NoRewindIterator - NoRewindIterator AppendIterator - AppendIterator InfiniteIterator - InfiniteIterator RegexIterator - RegexIterator RecursiveRegexIterator - RecursiveRegexIterator EmptyIterator - EmptyIterator RecursiveTreeIterator - RecursiveTreeIterator ArrayObject - ArrayObject ArrayIterator - ArrayIterator RecursiveArrayIterator - RecursiveArrayIterator SplFileInfo - SplFileInfo DirectoryIterator - DirectoryIterator FilesystemIterator - FilesystemIterator RecursiveDirectoryIterator - RecursiveDirectoryIterator GlobIterator - GlobIterator SplFileObject - SplFileObject SplTempFileObject - SplTempFileObject SplDoublyLinkedList - SplDoublyLinkedList SplQueue - SplQueue SplStack - SplStack SplHeap - SplHeap SplMinHeap - SplMinHeap SplMaxHeap - SplMaxHeap SplPriorityQueue - SplPriorityQueue SplFixedArray - SplFixedArray SplObjectStorage - SplObjectStorage MultipleIterator - MultipleIterator PDOException - PDOException PDO - PDO PDOStatement - PDOStatement PDORow - PDORow SessionHandler - SessionHandler Random\RandomError - Random\RandomError Random\BrokenRandomEngineError - Random\BrokenRandomEngineError Random\RandomException - Random\RandomException Random\Engine\Mt19937 - Random\Engine\Mt19937 Random\Engine\PcgOneseq128XslRr64 - Random\Engine\PcgOneseq128XslRr64 Random\Engine\Xoshiro256StarStar - Random\Engine\Xoshiro256StarStar Random\Engine\Secure - Random\Engine\Secure Random\Randomizer - Random\Randomizer ReflectionException - ReflectionException Reflection - Reflection ReflectionFunctionAbstract - ReflectionFunctionAbstract ReflectionFunction - ReflectionFunction ReflectionGenerator - ReflectionGenerator ReflectionParameter - ReflectionParameter ReflectionType - ReflectionType ReflectionNamedType - ReflectionNamedType ReflectionUnionType - ReflectionUnionType ReflectionIntersectionType - ReflectionIntersectionType ReflectionMethod - ReflectionMethod ReflectionClass - ReflectionClass ReflectionObject - ReflectionObject ReflectionProperty - ReflectionProperty ReflectionClassConstant - ReflectionClassConstant ReflectionExtension - ReflectionExtension ReflectionZendExtension - ReflectionZendExtension ReflectionReference - ReflectionReference ReflectionAttribute - ReflectionAttribute ReflectionEnum - ReflectionEnum ReflectionEnumUnitCase - ReflectionEnumUnitCase ReflectionEnumBackedCase - ReflectionEnumBackedCase ReflectionFiber - ReflectionFiber __PHP_Incomplete_Class - __PHP_Incomplete_Class AssertionError - AssertionError php_user_filter - php_user_filter Directory - Directory SimpleXMLElement - SimpleXMLElement SimpleXMLIterator - SimpleXMLIterator PharException - PharException Phar - Phar PharData - PharData PharFileInfo - PharFileInfo PhpToken - PhpToken XMLParser - XMLParser XMLReader - XMLReader XMLWriter - XMLWriter GMP - GMP Collator - Collator NumberFormatter - NumberFormatter Normalizer - Normalizer Locale - Locale MessageFormatter - MessageFormatter IntlDateFormatter - IntlDateFormatter IntlDatePatternGenerator - IntlDatePatternGenerator ResourceBundle - ResourceBundle Transliterator - Transliterator IntlTimeZone - IntlTimeZone IntlCalendar - IntlCalendar IntlGregorianCalendar - IntlGregorianCalendar Spoofchecker - Spoofchecker IntlException - IntlException IntlIterator - IntlIterator IntlBreakIterator - IntlBreakIterator IntlRuleBasedBreakIterator - IntlRuleBasedBreakIterator IntlCodePointBreakIterator - IntlCodePointBreakIterator IntlPartsIterator - IntlPartsIterator UConverter - UConverter IntlChar - IntlChar
Output for rfc.property-hooks
InternalIterator - InternalIterator Exception - Exception ErrorException - ErrorException Error - Error CompileError - CompileError ParseError - ParseError TypeError - TypeError ArgumentCountError - ArgumentCountError ValueError - ValueError ArithmeticError - ArithmeticError DivisionByZeroError - DivisionByZeroError UnhandledMatchError - UnhandledMatchError Closure - Closure Generator - Generator ClosedGeneratorException - ClosedGeneratorException WeakReference - WeakReference WeakMap - WeakMap Attribute - Attribute ReturnTypeWillChange - ReturnTypeWillChange AllowDynamicProperties - AllowDynamicProperties SensitiveParameter - SensitiveParameter SensitiveParameterValue - SensitiveParameterValue Fiber - Fiber FiberError - FiberError stdClass - stdClass DateTime - DateTime DateTimeImmutable - DateTimeImmutable DateTimeZone - DateTimeZone DateInterval - DateInterval DatePeriod - DatePeriod DateError - DateError DateObjectError - DateObjectError DateRangeError - DateRangeError DateException - DateException DateInvalidTimeZoneException - DateInvalidTimeZoneException DateInvalidOperationException - DateInvalidOperationException DateMalformedStringException - DateMalformedStringException DateMalformedIntervalStringException - DateMalformedIntervalStringException DateMalformedPeriodStringException - DateMalformedPeriodStringException LibXMLError - LibXMLError SQLite3 - SQLite3 SQLite3Stmt - SQLite3Stmt SQLite3Result - SQLite3Result InflateContext - InflateContext DeflateContext - DeflateContext DOMException - DOMException DOMImplementation - DOMImplementation DOMNode - DOMNode DOMNameSpaceNode - DOMNameSpaceNode DOMDocumentFragment - DOMDocumentFragment DOMDocument - DOMDocument DOMNodeList - DOMNodeList DOMNamedNodeMap - DOMNamedNodeMap DOMCharacterData - DOMCharacterData DOMAttr - DOMAttr DOMElement - DOMElement DOMText - DOMText DOMComment - DOMComment DOMCdataSection - DOMCdataSection DOMDocumentType - DOMDocumentType DOMNotation - DOMNotation DOMEntity - DOMEntity DOMEntityReference - DOMEntityReference DOMProcessingInstruction - DOMProcessingInstruction DOMXPath - DOMXPath finfo - finfo HashContext - HashContext JsonException - JsonException LogicException - LogicException BadFunctionCallException - BadFunctionCallException BadMethodCallException - BadMethodCallException DomainException - DomainException InvalidArgumentException - InvalidArgumentException LengthException - LengthException OutOfRangeException - OutOfRangeException RuntimeException - RuntimeException OutOfBoundsException - OutOfBoundsException OverflowException - OverflowException RangeException - RangeException UnderflowException - UnderflowException UnexpectedValueException - UnexpectedValueException RecursiveIteratorIterator - RecursiveIteratorIterator IteratorIterator - IteratorIterator FilterIterator - FilterIterator RecursiveFilterIterator - RecursiveFilterIterator CallbackFilterIterator - CallbackFilterIterator RecursiveCallbackFilterIterator - RecursiveCallbackFilterIterator ParentIterator - ParentIterator LimitIterator - LimitIterator CachingIterator - CachingIterator RecursiveCachingIterator - RecursiveCachingIterator NoRewindIterator - NoRewindIterator AppendIterator - AppendIterator InfiniteIterator - InfiniteIterator RegexIterator - RegexIterator RecursiveRegexIterator - RecursiveRegexIterator EmptyIterator - EmptyIterator RecursiveTreeIterator - RecursiveTreeIterator ArrayObject - ArrayObject ArrayIterator - ArrayIterator RecursiveArrayIterator - RecursiveArrayIterator SplFileInfo - SplFileInfo DirectoryIterator - DirectoryIterator FilesystemIterator - FilesystemIterator RecursiveDirectoryIterator - RecursiveDirectoryIterator GlobIterator - GlobIterator SplFileObject - SplFileObject SplTempFileObject - SplTempFileObject SplDoublyLinkedList - SplDoublyLinkedList SplQueue - SplQueue SplStack - SplStack SplHeap - SplHeap SplMinHeap - SplMinHeap SplMaxHeap - SplMaxHeap SplPriorityQueue - SplPriorityQueue SplFixedArray - SplFixedArray SplObjectStorage - SplObjectStorage MultipleIterator - MultipleIterator PDOException - PDOException PDO - PDO PDOStatement - PDOStatement PDORow - PDORow SessionHandler - SessionHandler Random\RandomError - Random\RandomError Random\BrokenRandomEngineError - Random\BrokenRandomEngineError Random\RandomException - Random\RandomException Random\Engine\Mt19937 - Random\Engine\Mt19937 Random\Engine\PcgOneseq128XslRr64 - Random\Engine\PcgOneseq128XslRr64 Random\Engine\Xoshiro256StarStar - Random\Engine\Xoshiro256StarStar Random\Engine\Secure - Random\Engine\Secure Random\Randomizer - Random\Randomizer Random\IntervalBoundary - Random\IntervalBoundary ReflectionException - ReflectionException Reflection - Reflection ReflectionFunctionAbstract - ReflectionFunctionAbstract ReflectionFunction - ReflectionFunction ReflectionGenerator - ReflectionGenerator ReflectionParameter - ReflectionParameter ReflectionType - ReflectionType ReflectionNamedType - ReflectionNamedType ReflectionUnionType - ReflectionUnionType ReflectionIntersectionType - ReflectionIntersectionType ReflectionMethod - ReflectionMethod ReflectionClass - ReflectionClass ReflectionObject - ReflectionObject ReflectionProperty - ReflectionProperty ReflectionClassConstant - ReflectionClassConstant ReflectionExtension - ReflectionExtension ReflectionZendExtension - ReflectionZendExtension ReflectionReference - ReflectionReference ReflectionAttribute - ReflectionAttribute ReflectionEnum - ReflectionEnum ReflectionEnumUnitCase - ReflectionEnumUnitCase ReflectionEnumBackedCase - ReflectionEnumBackedCase ReflectionFiber - ReflectionFiber __PHP_Incomplete_Class - __PHP_Incomplete_Class AssertionError - AssertionError php_user_filter - php_user_filter Directory - Directory SimpleXMLElement - SimpleXMLElement SimpleXMLIterator - SimpleXMLIterator PharException - PharException Phar - Phar PharData - PharData PharFileInfo - PharFileInfo PhpToken - PhpToken XMLParser - XMLParser XMLReader - XMLReader XMLWriter - XMLWriter GMP - GMP Collator - Collator NumberFormatter - NumberFormatter Normalizer - Normalizer Locale - Locale MessageFormatter - MessageFormatter IntlDateFormatter - IntlDateFormatter IntlDatePatternGenerator - IntlDatePatternGenerator ResourceBundle - ResourceBundle Transliterator - Transliterator IntlTimeZone - IntlTimeZone IntlCalendar - IntlCalendar IntlGregorianCalendar - IntlGregorianCalendar Spoofchecker - Spoofchecker IntlException - IntlException IntlIterator - IntlIterator IntlBreakIterator - IntlBreakIterator IntlRuleBasedBreakIterator - IntlRuleBasedBreakIterator IntlCodePointBreakIterator - IntlCodePointBreakIterator IntlPartsIterator - IntlPartsIterator UConverter - UConverter IntlChar - IntlChar

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:
37.93 ms | 417 KiB | 8 Q