3v4l.org

run code in 300+ PHP versions simultaneously
<?php $uploadedAssets = json_decode('[ { "id": 28, "video_id": 5, "wistia_id": "4q9l3wynf5", "camera_angle": "front", "starting_foot": null, "verbal_cue": "on" }, { "id": 29, "video_id": 5, "wistia_id": "0puffz75s7", "camera_angle": "front", "starting_foot": null, "verbal_cue": "off" }, { "id": 30, "video_id": 5, "wistia_id": "9drxqjvfjm", "camera_angle": "back", "starting_foot": null, "verbal_cue": "on" }, { "id": 31, "video_id": 5, "wistia_id": "2ivgoapitc", "camera_angle": "back", "starting_foot": null, "verbal_cue": "off" } ]', true); var_dump($uploadedAssets); die(); $goodAsset = null; $demands = [ ['attribute' => 'camera_angle', 'value' => 'front'], ['attribute' => 'starting_foot', 'value' => 'right'], ['attribute' => 'verbal_cue', 'value' => 'off'] ]; while (!empty($demands)) { foreach ($uploadedAssets as $asset) { $match = true; foreach ($demands as $demand) { if ($asset[$demand['attribute']] != $demand['value']) { $match = false; break; } } if ($match) { $goodAsset = $asset; break; } } if (empty($goodAsset)) { array_pop($demands); } }
Output for git.master, git.master_jit, rfc.property-hooks
array(4) { [0]=> array(6) { ["id"]=> int(28) ["video_id"]=> int(5) ["wistia_id"]=> string(10) "4q9l3wynf5" ["camera_angle"]=> string(5) "front" ["starting_foot"]=> NULL ["verbal_cue"]=> string(2) "on" } [1]=> array(6) { ["id"]=> int(29) ["video_id"]=> int(5) ["wistia_id"]=> string(10) "0puffz75s7" ["camera_angle"]=> string(5) "front" ["starting_foot"]=> NULL ["verbal_cue"]=> string(3) "off" } [2]=> array(6) { ["id"]=> int(30) ["video_id"]=> int(5) ["wistia_id"]=> string(10) "9drxqjvfjm" ["camera_angle"]=> string(4) "back" ["starting_foot"]=> NULL ["verbal_cue"]=> string(2) "on" } [3]=> array(6) { ["id"]=> int(31) ["video_id"]=> int(5) ["wistia_id"]=> string(10) "2ivgoapitc" ["camera_angle"]=> string(4) "back" ["starting_foot"]=> NULL ["verbal_cue"]=> string(3) "off" } }

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:
39.24 ms | 403 KiB | 8 Q