JSON and Data Shapes
JSON List Count
A JSON list can be decoded and counted without printing the whole list.
list summary
Summarize decoded lists with scalar counts or selected fields.
JSON List Count
json_list_count.php
Replay: real traced execution (multi-file project)
<?php
$extra = "pear";
$json = '["apple","banana","' . $extra . '"]';
$count = count(json_decode($json, true));
$last = json_decode($json, true)[2];
echo "extra=" . $extra . "\n";
echo "count=" . $count . "\n";
echo "last=" . $last . "\n";
<?php
$extra = "plum";
$json = '["apple","banana","' . $extra . '"]';
$count = count(json_decode($json, true));
$last = json_decode($json, true)[2];
echo "extra=" . $extra . "\n";
echo "count=" . $count . "\n";
echo "last=" . $last . "\n";
<?php
$extra = "kiwi";
$json = '["apple","banana","' . $extra . '"]';
$count = count(json_decode($json, true));
$last = json_decode($json, true)[2];
echo "extra=" . $extra . "\n";
echo "count=" . $count . "\n";
echo "last=" . $last . "\n";
$extra ← pear, $json ← ["apple","banana","pear"], $count ← 3, $last ← pear
1<?php2$extra→ pear = "pear"; //@extra="plum", "kiwi"3$json→ ["apple","banana","pear"] = '["apple","banana","' . $extrapear . '"]';4$count→ 3 = count(json_decode($json["apple","banana","pear"], true));5$last→ pear = json_decode($json, true)[2]pear;67echo "extra=" . $extrapear . "\n";8echo "count=" . $count3 . "\n";9echo "last=" . $lastpear . "\n";outputextra=pear count=3 last=pear
$extra ← plum, $json ← ["apple","banana","plum"], $count ← 3, $last ← plum
1<?php2$extra→ plum = "plum";3$json→ ["apple","banana","plum"] = '["apple","banana","' . $extraplum . '"]';4$count→ 3 = count(json_decode($json["apple","banana","plum"], true));5$last→ plum = json_decode($json, true)[2]plum;67echo "extra=" . $extraplum . "\n";8echo "count=" . $count3 . "\n";9echo "last=" . $lastplum . "\n";outputextra=plum count=3 last=plum
$extra ← kiwi, $json ← ["apple","banana","kiwi"], $count ← 3, $last ← kiwi
1<?php2$extra→ kiwi = "kiwi";3$json→ ["apple","banana","kiwi"] = '["apple","banana","' . $extrakiwi . '"]';4$count→ 3 = count(json_decode($json["apple","banana","kiwi"], true));5$last→ kiwi = json_decode($json, true)[2]kiwi;67echo "extra=" . $extrakiwi . "\n";8echo "count=" . $count3 . "\n";9echo "last=" . $lastkiwi . "\n";outputextra=kiwi count=3 last=kiwi