3v4l.org

run code in 300+ PHP versions simultaneously
<?php function transform(array $input): array { $output = []; foreach($input as $k => $v) { if(is_array($v)) { $output[$k] = transform($v); } else { $output[$k] = $v * 10; } } return $output; } $input = [ 'parent1' => [ 'subArray1' => [ 'value1' => '1', 'value2' => '2' ], 'value3' => '3', 'subArray2' =>[ 'subSubArray2' => [ 'value1' => '1', 'value4' => '4' ] ] ], 'parent2' => [ 'subArray1' => [ 'value1' => '1', 'value2' => '2' ], 'value5' => '5', 'subArray2' =>[ 'subSubArray2' => [ 'value1' => '1', 'value4' => '4' ] ] ] ]; var_dump(transform($input));
Output for git.master_jit, git.master, rfc.property-hooks
array(2) { ["parent1"]=> array(3) { ["subArray1"]=> array(2) { ["value1"]=> int(10) ["value2"]=> int(20) } ["value3"]=> int(30) ["subArray2"]=> array(1) { ["subSubArray2"]=> array(2) { ["value1"]=> int(10) ["value4"]=> int(40) } } } ["parent2"]=> array(3) { ["subArray1"]=> array(2) { ["value1"]=> int(10) ["value2"]=> int(20) } ["value5"]=> int(50) ["subArray2"]=> array(1) { ["subSubArray2"]=> array(2) { ["value1"]=> int(10) ["value4"]=> int(40) } } } }

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:
34.59 ms | 402 KiB | 8 Q