PHP读取TheNextLeg API响应数组中imageUrls元素的方法
TheNextLeg API响应中访问imageUrls的正确方式
你当前的问题是忽略了imageUrls的嵌套层级——它并不是直接在根数组$completedImageData下,而是嵌套在response子数组里。
正确的访问方式
在PHP中,需要先访问response子数组,再获取imageUrls,代码示例如下:
// 遍历获取所有图片URL for ($i = 0; $i < 4; $i++) { $imageUrl = $completedImageData['response']['imageUrls'][$i]; // 处理URL,比如输出或存储 echo $imageUrl . PHP_EOL; } // 直接获取单个URL $firstImageUrl = $completedImageData['response']['imageUrls'][0];
补充说明
- 数组键名建议用单引号(或双引号)包裹,避免PHP将其误解析为常量,这是PHP数组访问的规范写法。
- 从你的API响应结构来看,
imageUrls是包含4个元素的数组,索引范围0-3,遍历逻辑是正确的。
API响应结构参考
COMPLETED IMAGE DATA Array ( [progress] => 100 [response] => Array ( [accountId] => dvfdfbf';gkdf'gk [createdAt] => 2023-10-31T13:21:11.306Z [originatingMessageId] => 0Wmr62453OSjdkbG9KWt [buttons] => Array ( [0] => U1 [1] => U2 [2] => U3 [3] => U4 [4] => 🔄 [5] => V1 [6] => V2 [7] => V3 [8] => V4 ) [imageUrl] => https://cdn.discordapp.com/attachments/1154420052616019998/1168902491887374336/jon709_49338_dog_992a3693-9d9a-4321-9b45-a675b393263c.png?ex=65537447&is=6540ff47&hm=85c038ca483250500d8c1e2672111bb1583d0b1bb772fbc161057ab2202dd447& [imageUrls] => Array ( [0] => https://cdn.midjourney.com/992a3693-9d9a-4321-9b45-a675b393263c/0_0.png [1] => https://cdn.midjourney.com/992a3693-9d9a-4321-9b45-a675b393263c/0_1.png [2] => https://cdn.midjourney.com/992a3693-9d9a-4321-9b45-a675b393263c/0_2.png [3] => https://cdn.midjourney.com/992a3693-9d9a-4321-9b45-a675b393263c/0_3.png ) [responseAt] => 2023-10-31T13:21:12.009Z [description] => [type] => imagine [content] => dog [buttonMessageId] => nD9LIfo7cheaMgSUCnQ1 ) )
内容的提问来源于stack exchange,提问作者JonGH
相关产品推荐
相关产品推荐

