我有一个带有产品名称的多维数组,每个产品都有一个或多个(最多5个)图像。我正在尝试获取产品名称和first
图像,但是我拥有它的方式会打印所有图像。我如何获得每个的第一个?
foreach ($my_array['results'] as $result) {
echo 'Title: '.$result['title'];
foreach ($result['images'] as $image) {
echo 'Image: '.$image['image_url'];
echo "\n";
}
}
打印如下:
Title: Blah
Image: http://1..
Image: http://2..
Image: http://3..
我想得到
Title: Blah
Image: http://1..
我尝试将其修改为
echo 'Image: '.$image['full_image_url'][0];
但这不起作用。有什么想法吗?
答案 0 :(得分:3)
foreach ($my_array['results'] as $result) {
echo 'Title: '.$result['title'];
echo 'Image: ' . $result['images'][0]['image_url'];
echo "\n";
}
或者(例如,如果您不知道第一个索引)
foreach ($my_array['results'] as $result) {
echo 'Title: '.$result['title'];
foreach ($result['images'] as $image) {
echo 'Image: '.$image['image_url'];
echo "\n";
break;
}
}
答案 1 :(得分:1)
foreach ($my_array['results'] as $result) {
echo 'Title: '.$result['title'];
foreach ($result['images'] as $image) {
echo 'Image: '.$image['image_url'];
echo "\n";
break;
}
}
答案 2 :(得分:1)
如果您想获得图片阵列的标题和第一个元素,请尝试以下代码:
foreach ($my_array['results'] as $result) {
echo 'Title: '.$result['title'];
echo 'Image: '.$result['images']['0']['image_url'];
echo "\n";
}
答案 3 :(得分:1)
foreach ($my_array['results'] as $result)
{
echo 'Title: '.$result['title'];
foreach ($result['images'] as $image)
{
echo 'Image: '.$image['image_url'];
echo "\n";
break;
}
}
答案 4 :(得分:1)
如果您知道索引ID比您可以使用的那样:
foreach ($my_array as $result) {
echo 'Title: '.$result['title'];
echo 'Image: '. $result['image_url'][0];
}
替代是:
foreach ($my_array['results'] as $result) {
echo 'Title: '.$result['title'];
foreach ($result['images'] as $image) {
echo 'Image: '.$image['image_url'];
return;
}
}
第三种解决方案由 @gacek
提供