3v4l.org

run code in 300+ PHP versions simultaneously
<?php $json['Results'][0] = [ 'AirBagLocCurtain' => 'All Rows', 'AirBagLocFront' => '1st Row (Driver & Passenger)', 'AirBagLocSide' => '1st Row (Driver & Passenger)', 'BodyClass' => 'Sedan/Saloon', 'DisplacementCC' => '1984', 'DisplacementCI' => '121.071108283', 'DisplacementL' => '1.984000', 'Doors' => '4', 'EngineCylinders' => '4', 'EngineHP' => '220', 'EngineKW' => '164.0540', 'EngineManufacturer' => 'Audi', 'EngineModel' => 'Flex Fuel Capable engine', 'ErrorCode' => '0 - VIN decoded clean. Check Digit (9th position) is correct', 'FuelTypePrimary' => 'Gasoline', 'FuelTypeSecondary' => 'Ethanol (E85)', 'Make' => 'AUDI', 'Manufacturer' => 'AUDI', 'ManufacturerId' => '1149', 'Model' => 'A4', 'ModelYear' => '2015', 'OtherEngineInfo' => 'Fuel: Gas (50-St); Federal / California Emission Standard: BIN 5 / ULEV II; Emissions Certification Test Group: FVGAV02.0AUB / FVGAJ02.0AUF E85', 'PlantCity' => 'Ingolstadt', 'PlantCountry' => 'Germany', 'SeatBeltsAll' => 'Manual', 'Series' => 'Premium quattro', 'TPMS' => 'Indirect', 'TransmissionStyle'=> 'Automatic', 'VIN' => 'WAUBFAFL6FA058452', 'VehicleType' => 'PASSENGER CAR' ]; $master = [ "General" => [ "Make" => "", "ModelYear" => "", "Model" => "", "BodyClass" => "", "Doors" => "", "Series" => "", "VehicleType" => "" ], "Safety" => [ "AirBagLocCurtain" => "", "AirBagLocFront" => "", "AirBagLocSide" => "", "SeatBeltsAll" => "" ], "Engine" => [ "DisplacementCC" => "", "DisplacementCI" => "", "DisplacementL" => "", "EngineCylinders" => "", "EngineHP" => "", "EngineKW" => "", "EngineManufacturer" => "", "EngineModel" => "", "TransmissionStyle" => "", "OtherEngineInfo" => "", "FuelTypePrimary" => "", "FuelTypeSecondary" => "" ], "Factory" => [ "Manufacturer" => "", "ManufacturerId" => "", "PlantCity" => "", "PlantCountry" => "" ], "Other" => [ "ErrorCode" => "", "TPMS" => "" ] ]; foreach ($master as $category => &$items) { // allow modification of $master data with & foreach ($items as $k => &$v) { // allow modification of $master data with & if (isset($json['Results'][0][$k]) && strlen($json['Results'][0][$k])) { // only bother to process/display desired keys and non-empty values $new = $json['Results'][0][$k]; if ($k == "DisplacementCC") { $v = "Engine Displacement 2: $new cc's"; } elseif ($k == "DisplacementCI") { $v = "Engine Displacement 3: $new ci's"; } elseif ($k == "DisplacementL") { $v = "Engine Displacement 1: " . round($new, 1) . " liters"; } elseif ($k == "EngineKW") { $v = "Kilowatts: $new kw"; } elseif ($k == "EngineManufacturer") { $v = "Engine Manufacturer: $new"; } elseif ($k == "EngineModel") { $v = "Engine Model: $new"; } elseif ($k == "FuelTypePrimary") { $v = "Primary Fuel Type: $new"; } elseif ($k == "FuelTypeSecondary") { $v = "Secondary Fuel Type: $new"; } elseif ($k == "EngineHP") { $v = "Horsepower: $new hp"; } elseif ($k == "EngineCylinders") { $v = "Engine Size: $new cylinders"; } else { $v = "$k: $new"; } } else { unset($master[$category][$k]); // remove unwanted element from master } } } unset($items, $v); // just as a precaution to eliminate the referenced variables echo "<div id=\"VIN\">{$json['Results'][0]['VIN']}</div>\n\n"; // now iterate the updated $master multi-dimensional array and only display the "good stuff" foreach ($master as $category => $items) { if (!empty($items)) { // only display categories & rows of data when the category holds 1 or more values echo "<div class=\"group\">$category -</ br>\n"; foreach ($items as $v) { echo "\t<div class=\"row\">$v</div>\n"; } echo "</div>\n\n"; } }
Output for 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.4, 8.3.6 - 8.3.7
<div id="VIN">WAUBFAFL6FA058452</div> <div class="group">General -</ br> <div class="row">Make: AUDI</div> <div class="row">ModelYear: 2015</div> <div class="row">Model: A4</div> <div class="row">BodyClass: Sedan/Saloon</div> <div class="row">Doors: 4</div> <div class="row">Series: Premium quattro</div> <div class="row">VehicleType: PASSENGER CAR</div> </div> <div class="group">Safety -</ br> <div class="row">AirBagLocCurtain: All Rows</div> <div class="row">AirBagLocFront: 1st Row (Driver & Passenger)</div> <div class="row">AirBagLocSide: 1st Row (Driver & Passenger)</div> <div class="row">SeatBeltsAll: Manual</div> </div> <div class="group">Engine -</ br> <div class="row">Engine Displacement 2: 1984 cc's</div> <div class="row">Engine Displacement 3: 121.071108283 ci's</div> <div class="row">Engine Displacement 1: 2 liters</div> <div class="row">Engine Size: 4 cylinders</div> <div class="row">Horsepower: 220 hp</div> <div class="row">Kilowatts: 164.0540 kw</div> <div class="row">Engine Manufacturer: Audi</div> <div class="row">Engine Model: Flex Fuel Capable engine</div> <div class="row">TransmissionStyle: Automatic</div> <div class="row">OtherEngineInfo: Fuel: Gas (50-St); Federal / California Emission Standard: BIN 5 / ULEV II; Emissions Certification Test Group: FVGAV02.0AUB / FVGAJ02.0AUF E85</div> <div class="row">Primary Fuel Type: Gasoline</div> <div class="row">Secondary Fuel Type: Ethanol (E85)</div> </div> <div class="group">Factory -</ br> <div class="row">Manufacturer: AUDI</div> <div class="row">ManufacturerId: 1149</div> <div class="row">PlantCity: Ingolstadt</div> <div class="row">PlantCountry: Germany</div> </div> <div class="group">Other -</ br> <div class="row">ErrorCode: 0 - VIN decoded clean. Check Digit (9th position) is correct</div> <div class="row">TPMS: Indirect</div> </div>
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 <div id="VIN">WAUBFAFL6FA058452</div> <div class="group">General -</ br> <div class="row">Make: AUDI</div> <div class="row">ModelYear: 2015</div> <div class="row">Model: A4</div> <div class="row">BodyClass: Sedan/Saloon</div> <div class="row">Doors: 4</div> <div class="row">Series: Premium quattro</div> <div class="row">VehicleType: PASSENGER CAR</div> </div> <div class="group">Safety -</ br> <div class="row">AirBagLocCurtain: All Rows</div> <div class="row">AirBagLocFront: 1st Row (Driver & Passenger)</div> <div class="row">AirBagLocSide: 1st Row (Driver & Passenger)</div> <div class="row">SeatBeltsAll: Manual</div> </div> <div class="group">Engine -</ br> <div class="row">Engine Displacement 2: 1984 cc's</div> <div class="row">Engine Displacement 3: 121.071108283 ci's</div> <div class="row">Engine Displacement 1: 2 liters</div> <div class="row">Engine Size: 4 cylinders</div> <div class="row">Horsepower: 220 hp</div> <div class="row">Kilowatts: 164.0540 kw</div> <div class="row">Engine Manufacturer: Audi</div> <div class="row">Engine Model: Flex Fuel Capable engine</div> <div class="row">TransmissionStyle: Automatic</div> <div class="row">OtherEngineInfo: Fuel: Gas (50-St); Federal / California Emission Standard: BIN 5 / ULEV II; Emissions Certification Test Group: FVGAV02.0AUB / FVGAJ02.0AUF E85</div> <div class="row">Primary Fuel Type: Gasoline</div> <div class="row">Secondary Fuel Type: Ethanol (E85)</div> </div> <div class="group">Factory -</ br> <div class="row">Manufacturer: AUDI</div> <div class="row">ManufacturerId: 1149</div> <div class="row">PlantCity: Ingolstadt</div> <div class="row">PlantCountry: Germany</div> </div> <div class="group">Other -</ br> <div class="row">ErrorCode: 0 - VIN decoded clean. Check Digit (9th position) is correct</div> <div class="row">TPMS: Indirect</div> </div>

preferences:
180.31 ms | 409 KiB | 177 Q