foreach array_slice无法正常工作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了foreach array_slice无法正常工作相关的知识,希望对你有一定的参考价值。
我尝试只显示foreach的前3项,但由于某种原因,我的代码似乎不起作用。
它可以使用默认代码:<?php foreach ($rma->getItemCollection() as $item):?>
我错过了什么?
码:
<?php $items = $rma->getItemCollection();
$item = array_slice($items, 0, 3);
foreach($item as $itm): ?>
<li class="order-row-item">
<div class="order-row-product">
<div class="order-row-product-image">
<img src="<?php echo $this->helper('catalog/image')->init($itm->getProduct(), 'thumbnail')->resize(85) ?>" border="0" />
</div>
<div class="order-row-product-name">
<?php echo substr(Mage::helper('rma')->getOrderItemLabel($itm), 0, 30) ?>
</div>
</div>
</li>
<?php endforeach;?>
答案
如果$rma->getItemCollection();
的结果不是数组,而是一些实现Traversable接口的对象,则可以使用计数器:
<?php
$items = $rma->getItemCollection();
$counter = 0;
foreach($items as $item): ?>
<li>...</li>
<?php
$counter++;
if ($counter == 3) {
break;
}
endforeach;
其他方式可以指定查询的限制,这是在getItemCollection()
的引擎盖下完成的。
另一答案
试试这段代码
<?php
$items = $rma->getItemCollection();
$item = array_slice($items, 0, 3);
foreach($item as $itm){
echo'
<li class="order-row-item">
<div class="order-row-product">
<div class="order-row-product-image">
<img src="'.
$this->helper('catalog/image')->init($itm->getProduct(),
'thumbnail')->resize(85).' border="0" />
</div>
<div class="order-row-product-name">'.
substr(Mage::helper('rma')->getOrderItemLabel($itm), 0, 30).'
</div>
</div>
</li>';}
?>`
以上是关于foreach array_slice无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI ForEach.onDelete 在 TabView 中无法正常工作
在 foreach 循环中的 if 语句中的 while 循环...无法正常工作