这是一个非常基本的问题,请原谅我缺乏知识。
我正在尝试从PHP中的Freebase输出JSON查询。我已经能够使用cURL和json_decode将JSON解析为PHP。
以下是JSON数组的链接(出于某种原因,我无法直接链接): http://www.freebase.com/api/service/mqlread?query= {%20%22query%22%3A%20 [{%20%22type%22%3A%20%22%2Fpeople%2Fperson%22%2C%20%22ns0%3Atype%22%3A%20 %22%2Fbase%2Fbillionaires%2Fbillionaire%22%2C%20%22employment_history%22%3A%20 [{%20%22company%22%3A%20null%20}]%2C%20%22name%22%3A%20null %20}]%20}
我能够输出数组的第一级(比尔盖茨),但不能输出第二级(微软)。
我已经想出了如何显示和循环人们的名字,而不是他们的关联公司。
因此,到目前为止,我的代码为我提供了一个名单列表。
$results = json_decode($response)->result;
foreach ($results as $name) {
echo $name->name . '<br/>';
我希望显示与每个名称相关联的公司。
浏览器格式应为:
人1姓名:
公司名称1
公司名称2
等。
人2姓名:
公司名称1
等。
感谢您的任何指示 - 我确信我只是错过了构建PHP代码以便轻松显示的简单方法。
答案 0 :(得分:5)
怎么样:
$results = json_decode($response)->result;
foreach ($results as $person) {
echo $person->name . '<br/>';
foreach($person->employment_history as $employer) {
echo $employer->company . '<br/>';
}
echo '<hr />'; // horizontal rule for good measure
}