获取foreach循环后的最后一个数组索引

时间:2016-01-14 11:48:49

标签: php arrays foreach

您好我正在尝试从我的每个循环中找到$ 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;?>"

3 个答案:

答案 0 :(得分: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; ?>"

答案 1 :(得分:1)

这应该有效:

<?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;?>"

答案 2 :(得分: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 . '">';

?>

http://ideone.com/01cWNg