[英]Get the last array index after a foreach loop
嗨,我正在嘗試為每個循環從我的$ linkNumber數組中查找最后一個數組,因為我在foreach循環之外有一個需要data-slide-index作為最后一個數組加1的圖像。如何實現此目的有幫助嗎?
<?php $linkNumber = 0;?>
<?php foreach ($variables as $variable){ ?>
<img src="$variable" data-slide-index="$linkNumber++"/>
<?php } ?>
<img src="#" data-slide-index="<?php $linkNumber + 1;?>"
如果我們忽略了您的變量目前根本不會打印或評估,那么請執行以下操作: 本質上說,你在做什么是正確的。 您的問題是大多數邏輯未執行。
您需要顯式地回顯變量,並且評估應在PHP塊內,如下所示
<?php
$linkNumber = 0;
foreach ($variables as $variable) :
?>
<img src="<?= $variable; ?>" data-slide-index="<?= $linkNumber; ?>"/>
<?php
$linkNumber++;
endforeach;
?>
<img src="#" data-slide-index="<?= $linkNumber; ?>"
這應該工作:
<?php $linkNumber = 0;?>
<?php foreach ($variables as $variable){ ?>
<img src="$variable" data-slide-index="$linkNumber++"/>
<?php } ?>
<img src="#" data-slide-index="<?php echo count($variables) + 1;?>"
除了某些語法問題外,您的代碼似乎可以正常工作。 消除這些,這些代碼對我有用:
<?php
$linkNumber = 0;
$variables = array("test", "test2");
foreach ($variables as $variable){
echo '<img src="' . $variable . '" data-slide-index="' . $linkNumber++ . '"/>' . "\n";
}
echo '<img src="#" data-slide-index="' . $linkNumber . '">';
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.