我试图开始'foreach',但它从1开始而不是0。为什么这样,我该如何解决?
<?php $i = 0;
foreach ($this->images as $image) {
$i++;
$src_image_thumb = Bt_propertyHelper::getPathImage($image->item_id, 'ssthumb', $image->filename, $this->category->id); ?>
<li data-uk-slideshow-item="<?php echo "$i"; ?>">
<img alt="<?php echo $image->title; ?>" src="<?php echo $src_image_thumb; ?>">
</li>
<?php } ?>
我知道这可能是相当obvius但我很新手。
答案 0 :(得分:1)
首先使用$i
然后递增它。这样做 -
$i = 0;
foreach ($this->images as $image) {
echo "<li id-photo='$i'>Values...</li>";
$i++;
}
对于你的代码应该是 -
<?php
$i = 0;
foreach ($this->images as $image) {
$src_image_thumb = Bt_propertyHelper::getPathImage($image>item_id,'ssthumb',$image->filename,$this->category->id);
?>
<li data-uk-slideshow-item="<?php echo "$i";?>">
<img alt="<?php echo $image->title; ?>" src="<?php echo $src_image_thumb; ?>">
</li>
<?php
$i++;
}
?>
答案 1 :(得分:0)
将$i++
放在循环的末尾。它在foreach循环的顶部递增,所以当你访问它时,它将从1开始而不是0。
编辑以澄清。如果您希望$i
从0开始,请使用此选项。您也可以在-1处启动$i
,并保持代码不变。
<?php
$i = 0;
foreach ($this->images as $image) {
$src_image_thumb = Bt_propertyHelper::getPathImage($image->item_id,'ssthumb',$image->filename,$this->category->id);
?>
<li data-uk-slideshow-item="<?php echo $i;?>">
<img alt="<?php echo $image->title; ?>" src="<?php echo $src_image_thumb; ?>">
</li>
<?php
$i++;
}
?>