3v4l.org

run code in 300+ PHP versions simultaneously
<?php $json=<<<JSON { "players": [ { "name": "Moldova", "image": "/Images/Moldova.jpg", "roll_over_image": "tank.jpg" }, { "name": "Georgia", "image": "/Images/georgia.gif", "roll_over_image": "tank.jpg" }, { "name": "Belarus", "image": "/Images/Belarus.gif", "roll_over_image": "tank.jpg" }, { "name": "Armenia", "image": "/Images/armenia.png", "roll_over_image": "tank.jpg" }, { "name": "Kazahstan", "image": "/Images/kazahstan.gif", "roll_over_image": "tank.jpg" }, { "name": "Russia", "image": "/Images/russia.gif", "roll_over_image": "tank.jpg" }, { "name": "Ukraine", "image": "/Images/ukraine.png", "roll_over_image": "tank.jpg" }, { "name": "Uzbekistan", "image": "/Images/uzbekistan.gif", "roll_over_image": "tank.jpg" } ], "games": [ { "matches": [ { "player1id": 0, "player2id": 1, "winner": "*" }, { "player1id": 2, "player2id": 3, "winner": "*" }, { "player1id": 4, "player2id": 5, "winner": "*" }, { "player1id": 6, "player2id": 7, "winner": "*" }, { "player1id": 0, "player2id": 2, "winner": "*" }, { "player1id": 4, "player2id": 6, "winner": "*" }, { "player1id": 0, "player2id": 4, "winner": 4 } ] }, { "matches": [ { "player1id": 0, "player2id": 1, "winner": "*" }, { "player1id": 2, "player2id": 3, "winner": "*" }, { "player1id": 4, "player2id": 5, "winner": "*" }, { "player1id": 6, "player2id": 7, "winner": "*" }, { "player1id": 0, "player2id": 2, "winner": "*" }, { "player1id": 4, "player2id": 6, "winner": "*" }, { "player1id": 0, "player2id": 4, "winner": 0 } ] } ] } JSON; $tempArray=json_decode($json,true); echo "Original:\n"; print_r($tempArray); $matches=array("games"=>array(0=>array("matches"=>array(array("winner"=>"winner","player1id"=>"player1id","player2id"=>"player2id"))))); echo "\nTempered:\n"; print_r(array_merge_recursive($tempArray,$matches));
Output for git.master, git.master_jit, rfc.property-hooks
Original: Array ( [players] => Array ( [0] => Array ( [name] => Moldova [image] => /Images/Moldova.jpg [roll_over_image] => tank.jpg ) [1] => Array ( [name] => Georgia [image] => /Images/georgia.gif [roll_over_image] => tank.jpg ) [2] => Array ( [name] => Belarus [image] => /Images/Belarus.gif [roll_over_image] => tank.jpg ) [3] => Array ( [name] => Armenia [image] => /Images/armenia.png [roll_over_image] => tank.jpg ) [4] => Array ( [name] => Kazahstan [image] => /Images/kazahstan.gif [roll_over_image] => tank.jpg ) [5] => Array ( [name] => Russia [image] => /Images/russia.gif [roll_over_image] => tank.jpg ) [6] => Array ( [name] => Ukraine [image] => /Images/ukraine.png [roll_over_image] => tank.jpg ) [7] => Array ( [name] => Uzbekistan [image] => /Images/uzbekistan.gif [roll_over_image] => tank.jpg ) ) [games] => Array ( [0] => Array ( [matches] => Array ( [0] => Array ( [player1id] => 0 [player2id] => 1 [winner] => * ) [1] => Array ( [player1id] => 2 [player2id] => 3 [winner] => * ) [2] => Array ( [player1id] => 4 [player2id] => 5 [winner] => * ) [3] => Array ( [player1id] => 6 [player2id] => 7 [winner] => * ) [4] => Array ( [player1id] => 0 [player2id] => 2 [winner] => * ) [5] => Array ( [player1id] => 4 [player2id] => 6 [winner] => * ) [6] => Array ( [player1id] => 0 [player2id] => 4 [winner] => 4 ) ) ) [1] => Array ( [matches] => Array ( [0] => Array ( [player1id] => 0 [player2id] => 1 [winner] => * ) [1] => Array ( [player1id] => 2 [player2id] => 3 [winner] => * ) [2] => Array ( [player1id] => 4 [player2id] => 5 [winner] => * ) [3] => Array ( [player1id] => 6 [player2id] => 7 [winner] => * ) [4] => Array ( [player1id] => 0 [player2id] => 2 [winner] => * ) [5] => Array ( [player1id] => 4 [player2id] => 6 [winner] => * ) [6] => Array ( [player1id] => 0 [player2id] => 4 [winner] => 0 ) ) ) ) ) Tempered: Array ( [players] => Array ( [0] => Array ( [name] => Moldova [image] => /Images/Moldova.jpg [roll_over_image] => tank.jpg ) [1] => Array ( [name] => Georgia [image] => /Images/georgia.gif [roll_over_image] => tank.jpg ) [2] => Array ( [name] => Belarus [image] => /Images/Belarus.gif [roll_over_image] => tank.jpg ) [3] => Array ( [name] => Armenia [image] => /Images/armenia.png [roll_over_image] => tank.jpg ) [4] => Array ( [name] => Kazahstan [image] => /Images/kazahstan.gif [roll_over_image] => tank.jpg ) [5] => Array ( [name] => Russia [image] => /Images/russia.gif [roll_over_image] => tank.jpg ) [6] => Array ( [name] => Ukraine [image] => /Images/ukraine.png [roll_over_image] => tank.jpg ) [7] => Array ( [name] => Uzbekistan [image] => /Images/uzbekistan.gif [roll_over_image] => tank.jpg ) ) [games] => Array ( [0] => Array ( [matches] => Array ( [0] => Array ( [player1id] => 0 [player2id] => 1 [winner] => * ) [1] => Array ( [player1id] => 2 [player2id] => 3 [winner] => * ) [2] => Array ( [player1id] => 4 [player2id] => 5 [winner] => * ) [3] => Array ( [player1id] => 6 [player2id] => 7 [winner] => * ) [4] => Array ( [player1id] => 0 [player2id] => 2 [winner] => * ) [5] => Array ( [player1id] => 4 [player2id] => 6 [winner] => * ) [6] => Array ( [player1id] => 0 [player2id] => 4 [winner] => 4 ) ) ) [1] => Array ( [matches] => Array ( [0] => Array ( [player1id] => 0 [player2id] => 1 [winner] => * ) [1] => Array ( [player1id] => 2 [player2id] => 3 [winner] => * ) [2] => Array ( [player1id] => 4 [player2id] => 5 [winner] => * ) [3] => Array ( [player1id] => 6 [player2id] => 7 [winner] => * ) [4] => Array ( [player1id] => 0 [player2id] => 2 [winner] => * ) [5] => Array ( [player1id] => 4 [player2id] => 6 [winner] => * ) [6] => Array ( [player1id] => 0 [player2id] => 4 [winner] => 0 ) ) ) [2] => Array ( [matches] => Array ( [0] => Array ( [winner] => winner [player1id] => player1id [player2id] => player2id ) ) ) ) )

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:
29.48 ms | 425 KiB | 8 Q