Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP循环从0开始,而不是从1开始_Php_Loops_Thumbnails - Fatal编程技术网

PHP循环从0开始,而不是从1开始

PHP循环从0开始,而不是从1开始,php,loops,thumbnails,Php,Loops,Thumbnails,尝试为每个必须从0开始的图像获取一个递增的数字,它当前从1输出,我不知道为什么 感谢您的帮助,提前谢谢 <div id="carousel"> <ul class="thumbs"> <?php $counts = 0 ; ?> <?php foreach( $images as $image ): $counts++; ?> <li> &

尝试为每个必须从0开始的图像获取一个递增的数字,它当前从1输出,我不知道为什么

感谢您的帮助,提前谢谢

  <div id="carousel">

    <ul class="thumbs">

   <?php $counts = 0 ; ?>

        <?php  foreach( $images as $image ): $counts++; ?>
            <li>
                <a data-slide-index="<?php echo $counts ;?>" href="">
<img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" /></a>
            </li>

<?php endforeach; ?>

    </ul>
  </div>

<?php endif; ?>


因为您在
echo

那么就这么做吧:

<?php $counts = -1 ; ?>

或者这个:

foreach( $images as $image )
{
    echo '<li>
        <a data-slide-index="' . $counts . '" href="">
        <img src="' . $image['sizes']['thumbnail'] . '" alt="' . $image['alt'] . '" /></a>
    </li>';
    $counts++;
}
foreach($images作为$image)
{
回声'
  • '; $counts++; }
    而不是

    <?php foreach( $images as $image ): $counts++; ?> 
    
    
    

    
    
    要在打印文本后增加

    foreach( $images as $image ): $counts++;
    
    在第一次迭代中运行。因此

    $counts = 0;
    foreach( $images as $image ): $counts++;
    
    $counts == 1 // true on first iteteration
    
    你可以这样做

    $counts = -1 // Code smell!
    

    
    

  • 在使用之前,先增加
    $counts
    。从0开始,但只要启动foreach并运行
    $counts++它变为1

    移动
    $counts++
    到foreach循环的末尾

    <?php $counts = 0 ; ?>
    <?php foreach( $images as $image ) : ?>
        <li>
            <a data-slide-index="<?php echo $counts; ?>" href="">
                <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" />
            </a>
        </li>
    
        <?php $counts++; ?>
    <?php endforeach; ?>
    
    
    

  • 像这样编写代码:

    <div id="carousel">
    
        <ul class="thumbs">
    
       <?php $counts = 0 ; ?>
    
            <?php  foreach( $images as $image ) { ?>
                <li>
                    <a data-slide-index="<?php echo $counts ;?>" href="">
    <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" /></a>
                </li>
    
    
    
    <?php  $counts++; }  ?>
    
        </ul>
      </div>
    
    <?php endif; ?>
    
    
    
    试试这段代码

        <div id="carousel">
    
        <ul class="thumbs">
    
       <?php $counts = 0 ; ?>
    
            <?php  foreach( $images as $image ): $counts++; ?>
                <li>
                    <a data-slide-index="<?php if($counts == 1){echo '0';}else {echo $counts 
     ;} ?>" href="">
    <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" /></a>
                </li>
    
    <?php endforeach; ?>
    
        </ul>
      </div>
    
    <?php endif; ?>
    
    
    

    $count++是否应该不在for循环的末尾?在使用计数器之前,您已经将计数器提高了1。将$counts++部分放在末尾。
    ++$counts
    根本不对-为什么不使用foreach的intead?您正在使用计数器重新创建车轮。@AaronW.这是不正确的。如果要切换到使用大括号,则需要删除endforeach。
    <div id="carousel">
    
        <ul class="thumbs">
    
       <?php $counts = 0 ; ?>
    
            <?php  foreach( $images as $image ) { ?>
                <li>
                    <a data-slide-index="<?php echo $counts ;?>" href="">
    <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" /></a>
                </li>
    
    
    
    <?php  $counts++; }  ?>
    
        </ul>
      </div>
    
    <?php endif; ?>
    
        <div id="carousel">
    
        <ul class="thumbs">
    
       <?php $counts = 0 ; ?>
    
            <?php  foreach( $images as $image ): $counts++; ?>
                <li>
                    <a data-slide-index="<?php if($counts == 1){echo '0';}else {echo $counts 
     ;} ?>" href="">
    <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" /></a>
                </li>
    
    <?php endforeach; ?>
    
        </ul>
      </div>
    
    <?php endif; ?>