3v4l.org

run code in 300+ PHP versions simultaneously
<?php $cityID = '2'; $oldCityFound = false; $newCityFound = false; $arr = [ '1' => ['ID'=>'1', 'NAME'=>'Moscow', 'UF_DEFAULT'=>'1', 'UF_CITY_CORD'=>'55.76, 37.64'], '2' => ['ID'=>'2', 'NAME'=>'Tver', 'UF_DEFAULT'=>'0', 'UF_CITY_CORD'=>'55.76, 37.64'], '3' => ['ID'=>'3', 'NAME'=>'Nahodka', 'UF_DEFAULT'=>'0', 'UF_CITY_CORD'=>'55.76, 37.64'], '4' => ['ID'=>'4', 'NAME'=>'Omsk', 'UF_DEFAULT'=>'0', 'UF_CITY_CORD'=>'55.76, 37.64'], ]; foreach ($arr as &$row) { if ($row['ID'] == $cityID) { if ($row['UF_DEFAULT'] == 1) { break; // nothing to change } $row['UF_DEFAULT'] = 1; $newCityFound = true; } elseif ($row['UF_DEFAULT'] == 1) { $row['UF_DEFAULT'] = 0; $oldCityFound = true; } if ($newCityFound && $oldCityFound) { break; // both jobs done ...efficiently } } unset($row); // best practice var_export($arr);
Output for git.master, git.master_jit, rfc.property-hooks
array ( 1 => array ( 'ID' => '1', 'NAME' => 'Moscow', 'UF_DEFAULT' => 0, 'UF_CITY_CORD' => '55.76, 37.64', ), 2 => array ( 'ID' => '2', 'NAME' => 'Tver', 'UF_DEFAULT' => 1, 'UF_CITY_CORD' => '55.76, 37.64', ), 3 => array ( 'ID' => '3', 'NAME' => 'Nahodka', 'UF_DEFAULT' => '0', 'UF_CITY_CORD' => '55.76, 37.64', ), 4 => array ( 'ID' => '4', 'NAME' => 'Omsk', 'UF_DEFAULT' => '0', 'UF_CITY_CORD' => '55.76, 37.64', ), )

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:
166.75 ms | 407 KiB | 5 Q