0

我正在用 PHP 解码一个 .json 文件。我已成功将 json 数据放入 html 表中。

json数据的形式为: {..."id.type.subtype":value,"id.type.subtype2":value,"id.type1.subtype":value,...}

这在我的 HTML 表中显示为: <tr><td>id.type.subtype</td><td>value</td></tr>

我想将每个唯一的名称转换id.type.subtype为唯一的人类可读名称,例如Thing.

我的完整代码:

<?php
$json = file_get_contents('file.json');
$jsonIterator = new  
 RecursiveIteratorIterator(new RecursiveArrayIterator(json_decode($json, TRUE)),     RecursiveIteratorIterator::SELF_FIRST);
if (count($jsonIterator) > 0) { 
echo "<table>\n";
foreach ($jsonIterator as $key => $val) { 
if(is_array($val)) { 
    $cnt = count($val); 
    echo "<tr><td>$key</td></tr>\n"; 
} else { 
    echo "<tr><td>$key</td><td>$val</td></tr>\n"; 
    } 
}
echo "</table>\n\n"; 
} else {
echo "<p>The iterator is empty.</p>"; 
}
?>

将以下内容放在后面foreach()是我能想到的唯一方法。它可以工作,但需要 200-300 个不同键的 if/elseif

if ($key == 'id.type.subtype') {
$key = 'Thing';
}

我已经很久没有使用 PHP 了。我知道任何方法都需要手动输入每个用户友好的标题,但必须有一种更有效的代码方法来更改键。还有其他方法吗?

4

0 回答 0