3v4l.org

run code in 300+ PHP versions simultaneously
<?php final class Foo implements \Stringable { private function __construct(public readonly string $value) { } public static function fromString(string $string): self { return new self($string); } /** * {@inheritdoc} */ public function __toString(): string { return $this->value; } } $options = [ Foo::fromString('c'), Foo::fromString('b'), Foo::fromString('a'), Foo::fromString('ccc'), Foo::fromString('bcc'), ]; uasort($options, strnatcasecmp(...)); var_export($options);
Output for git.master, git.master_jit, rfc.property-hooks
array ( 2 => \Foo::__set_state(array( 'value' => 'a', )), 1 => \Foo::__set_state(array( 'value' => 'b', )), 4 => \Foo::__set_state(array( 'value' => 'bcc', )), 0 => \Foo::__set_state(array( 'value' => 'c', )), 3 => \Foo::__set_state(array( 'value' => 'ccc', )), )

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:
66.13 ms | 406 KiB | 5 Q