$val) { if (is_array($val) ) { foreach ($val as $subkey => $subval) { $keys[] = "{$key}.{$subkey}"; if ($key === 'attributes') { // one more level for this one foreach ($subval as $attribsubkey => $_) { $keys[] = "{$key}.{$subkey}.{$attribsubkey}"; } } } } } echo implode("\n", $keys) . "\n"; # /srv/mediawiki $ ls php/extensions/*/extension.json | xargs -P 10 -I '{}' php ~/extkeys.php '{}' > ~/extkeys-all.txt # ~ $ sort ./extkeys-all.txt | uniq -c | sort -nr | head -n50