3v4l.org

run code in 300+ PHP versions simultaneously
<?php trait PropertyHelperTrait { protected function splitPropertyParts(): void { } } trait OrmPropertyHelperTrait { abstract protected function splitPropertyParts(): void; protected function addJoinsForNestedProperty(): void { $this->splitPropertyParts(); } } trait SearchFilterTrait { use PropertyHelperTrait; } abstract class AbstractFilter { use OrmPropertyHelperTrait, PropertyHelperTrait; public function apply(): void { $this->filterProperty(); } abstract protected function filterProperty(): void; } class SearchFilter extends AbstractFilter { use SearchFilterTrait; protected function filterProperty(): void { $this->addJoinsForNestedProperty(); } } class FilterExtension { public function applyToCollection(): void { (new SearchFilter())->apply(); } } (new FilterExtension)->applyToCollection();
Output for git.master, git.master_jit, rfc.property-hooks

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:
54.71 ms | 405 KiB | 5 Q