3v4l.org

run code in 500+ PHP versions simultaneously
<?php $users = [ [ "id" => 1, "name" => "rahul", "premium" => true, "purchases" => ["apple", "banana", "carrot"], "price" => 22, ], [ "id" => 2, "name" => "abhi", "premium" => false, "purchases" => ["apple", "banana", "carrot"], "price" => 22, ], [ "id" => 3, "name" => "kavita", "premium" => true, "purchases" => ["apple", "banana", "carrot", "orange"], "price" => 30, ], ]; $premiumUsers = array_reduce( $users, function ($carry, $user) { if ($user['premium']) { $carry[] = [ "name" => $user["name"], "purchases" => $user["purchases"], "price" => $user["price"] - 2 ]; } return $carry; }, [] ); print_r($premiumUsers); /** * Array ( [0] => Array ( [name] => rahul [purchases] => Array ( [0] => apple [1] => banana [2] => carrot ) [price] => 20 ) [1] => Array ( [name] => kavita [purchases] => Array ( [0] => apple [1] => banana [2] => carrot [3] => orange ) [price] => 28 ) ) */
Output for rfc.property-hooks, git.master, git.master_jit
Array ( [0] => Array ( [name] => rahul [purchases] => Array ( [0] => apple [1] => banana [2] => carrot ) [price] => 20 ) [1] => Array ( [name] => kavita [purchases] => Array ( [0] => apple [1] => banana [2] => carrot [3] => orange ) [price] => 28 ) )

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:
55.02 ms | 2950 KiB | 4 Q