JSON and Data Shapes
Decode Field
json_decode reads JSON text so fields can be selected by name.
selected field
Select scalar fields from decoded JSON instead of printing the whole decoded value.
Decode Field
decode_field.php
Replay: real traced execution (multi-file project)
<?php
$city = "Austin";
$json = '{"city":"' . $city . '","state":"TX"}';
$decodedCity = json_decode($json, true)["city"];
echo "city=" . $city . "\n";
echo "decoded=" . $decodedCity . "\n";
<?php
$city = "Boston";
$json = '{"city":"' . $city . '","state":"TX"}';
$decodedCity = json_decode($json, true)["city"];
echo "city=" . $city . "\n";
echo "decoded=" . $decodedCity . "\n";
<?php
$city = "Denver";
$json = '{"city":"' . $city . '","state":"TX"}';
$decodedCity = json_decode($json, true)["city"];
echo "city=" . $city . "\n";
echo "decoded=" . $decodedCity . "\n";
$city ← Austin, $json ← {"city":"Austin","state":"TX"}, $decodedCity ← Austin
1<?php2$city→ Austin = "Austin"; //@city="Boston", "Denver"3$json→ {"city":"Austin","state":"TX"} = '{"city":"' . $cityAustin . '","state":"TX"}';4$decodedCity→ Austin = json_decode($json, true)["city"]Austin;56echo "city=" . $cityAustin . "\n";7echo "decoded=" . $decodedCityAustin . "\n";outputcity=Austin decoded=Austin
$city ← Boston, $json ← {"city":"Boston","state":"TX"}, $decodedCity ← Boston
1<?php2$city→ Boston = "Boston";3$json→ {"city":"Boston","state":"TX"} = '{"city":"' . $cityBoston . '","state":"TX"}';4$decodedCity→ Boston = json_decode($json, true)["city"]Boston;56echo "city=" . $cityBoston . "\n";7echo "decoded=" . $decodedCityBoston . "\n";outputcity=Boston decoded=Boston
$city ← Denver, $json ← {"city":"Denver","state":"TX"}, $decodedCity ← Denver
1<?php2$city→ Denver = "Denver";3$json→ {"city":"Denver","state":"TX"} = '{"city":"' . $cityDenver . '","state":"TX"}';4$decodedCity→ Denver = json_decode($json, true)["city"]Denver;56echo "city=" . $cityDenver . "\n";7echo "decoded=" . $decodedCityDenver . "\n";outputcity=Denver decoded=Denver