使用JSON API提要,我使用curl然后使用json_decode来获取它,如果我是正确的,我会得到一个数组。我可以使用此$successes = $data2['Data']['0']['OID'];
显示数组中的特定数据。
我想要为API上的每个数据条目提取OID,因此我最终会得到一个显示所有OID的列表。我的想法是使用$first_names = array_column($data2, 'OID');
然后使用print_r,但我似乎无法弄清楚如何使用twig正确显示它?
$url2 = 'https://home-api.letmc.com/v2/tier3/letmcletting/property/properties/'.$letmc_property_id.'/photos?offset=0&count=1000&api_key='.$letmc_apikey.'';
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_URL, $url2);
curl_setopt($ch2, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json'));
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true);
$output2 = curl_exec($ch2);
curl_close($ch2);
$data2 = json_decode($output2, true);
$successes = $data2['Data']['0']['OID'];
$this->_app->render('tennant/tennant-my-property.twig', [
"theOIDs" => $successes,
]);
API提要示例
{
"Data": [
{
"OID": "0908-703e-0fe1-235c",
"ETag": "0908-703e-0fe1-235c-0",
"Name": "",
"FileName": "white lounge.jpg",
"InspectionItem": "0000-0000-0000-0000",
"InterimInspection": "0000-0000-0000-0000",
"InventoryItem": "0000-0000-0000-0000",
"Property": "0907-f421-2742-7351",
"Room": "0000-0000-0000-0000",
"PhotoNumber": 3
},
{
"OID": "0908-8a9b-c1f9-5219",
"ETag": "0908-8a9b-c1f9-5219-0",
"Name": "",
"FileName": "Large kitchen with island.jpg",
"InspectionItem": "0000-0000-0000-0000",
"InterimInspection": "0000-0000-0000-0000",
"InventoryItem": "0000-0000-0000-0000",
"Property": "0907-f421-2742-7351",
"Room": "0000-0000-0000-0000",
"PhotoNumber": 2
}
],
"Count": 2
}
任何帮助或想法都会很棒!
UPDATE
如果我将OID更改为$ data2,我也可以使用像{{ theOIDs['Data'][0]['OID'] }}
这样的twig从数组中获取特定条目。有没有办法让我使用树枝?
答案 0 :(得分:1)
试试这个循环:
<ul>
{% for elem in Data %}
<li>{{ elem.OID}}</li>
{% endfor %}
</ul>
此twigfiddle中的一个工作示例。
希望这个帮助