Laravel的新手,似乎无法解决这个微不足道的问题。在这里使用别人的代码。他们已经定义了数组“资产”,其中有4个图像被拉出来:
foreach(unserialize($productData['assets']) as $asset){
if(in_array($asset->rel,$denyRel)){
continue;
}
$assets[$i]['link'] = $asset->href;
$assets[$i]['rel'] = $asset->rel;
$i++;
}
结果如下:
[assets] => Array
(
[0] => Array
(
[link] => http://test.images-amazon.com/images/I/image1L.jpg
[rel] => PT01
)
[1] => Array
(
[link] => http://test.images-amazon.com/images/I/image2L.jpg
[rel] => PT02
)
[2] => Array
(
[link] => http://test.images-amazon.com/images/I/image3L.jpg
[rel] => PT03
)
[3] => Array
(
[link] => http://test.images-amazon.com/images/I/image4L.jpg
[rel] => MAIN
)
)
)
要拉出所有这些,我可以执行以下foreach循环:
@foreach($assets as $asset)
<div class="alt-img">
<img src="{{$asset['link']}}" data-rel="{{$asset['rel']}}" alt="{{$pageTitle}}" data-altImage="{{$asset['link']}}">
</div>
@endforeach
但是,我只需要从阵列中提取特定的一些,如PT01或PT02。有人能指出我正确的方向吗?谢谢。注意:站点通过AWS托管,URL略有修改。
答案 0 :(得分:0)
根据您的情况选择。 假设您只想保留'PT01'和'PT02',您可以这样做:
<?php $allowed = array('PTO1','OT02'); // This is just an example ?>
@foreach($assets as $asset)
@if(in_array($asset['rel'], $allowed))
<div class="alt-img">
<img src="{{$asset['link']}}" data-rel="{{$asset['rel']}}" alt="{{$pageTitle}}" data-altImage="{{$asset['link']}}">
</div>
@endif
@endforeach
上述代码仅打印那些data-rel
(井,rel
索引)'PTO1'和'PT02'的图像。
基本上,你已经在循环,所以只需选择(根据你想要的标准)打印哪一个