3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ 'key1' => [ 'key2' => [ 'key3' => 'YAY I GOT IT' ] ] ]; $keys = ['key1', 'key2', 'key3']; function findValueForKeys($data, $keys) { $key = array_shift($keys); echo "Searching for: '$key' in: '" . print_r($data, true) . "'" . PHP_EOL; if (!is_array($data)) { return $data; } if (array_key_exists($key, $data)) { if (!is_array($data[$key])) { echo 'Got the last value. It is: ' . $data[$key] . PHP_EOL; return $data[$key]; } findValueForKeys($data[$key], $keys); } else { return $data; } }; echo "Searching... got the value: " . findValueForKeys($array, $keys);
Output for git.master, git.master_jit, rfc.property-hooks
Searching for: 'key1' in: 'Array ( [key1] => Array ( [key2] => Array ( [key3] => YAY I GOT IT ) ) ) ' Searching for: 'key2' in: 'Array ( [key2] => Array ( [key3] => YAY I GOT IT ) ) ' Searching for: 'key3' in: 'Array ( [key3] => YAY I GOT IT ) ' Got the last value. It is: YAY I GOT IT Searching... got the value:

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