3v4l.org

run code in 300+ PHP versions simultaneously
<?php class AddressModes { const INET4_ADDR = 1; const INET6_ADDR = 2; const PREFER_INET6 = 4; } function getRequestList($mode) { $result = []; $blahBlah = [ (AddressModes::PREFER_INET6 | AddressModes::INET6_ADDR) => AddressModes::INET6_ADDR, (AddressModes::PREFER_INET6 | AddressModes::INET4_ADDR) => AddressModes::INET4_ADDR, (AddressModes::INET4_ADDR) => AddressModes::INET4_ADDR, (AddressModes::INET6_ADDR) => AddressModes::INET6_ADDR, ]; foreach ($blahBlah as $requirement => $value) { if ($mode & $requirement) { $result[] = $value; break; } } return $result; } var_dump(getRequestList(AddressModes::INET4_ADDR | AddressModes::INET6_ADDR)); var_dump(getRequestList(AddressModes::INET4_ADDR | AddressModes::INET6_ADDR | AddressModes::PREFER_INET6)); var_dump(getRequestList(AddressModes::INET4_ADDR)); var_dump(getRequestList(AddressModes::INET6_ADDR));
Output for git.master, git.master_jit, rfc.property-hooks
array(1) { [0]=> int(2) } array(1) { [0]=> int(2) } array(1) { [0]=> int(1) } array(1) { [0]=> int(2) }

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:
33.8 ms | 405 KiB | 9 Q