Foreach-显示项目数



我有这样的代码来计算foreach循环中的对象(库中的图像):

<?php $images = get_field('galerie'); if( $images ): ?>
      <?php $i=1; foreach( $images as $image ): ?>
      <?php echo $i++; ?> 
      <?php endforeach; ?>   
<?php endif; ?>

所以当我有4个项目(图像)时,它会给我

1 2 3 4

但我只需要最高的数字,比如:

4

当我有4个行李的时候。知道这个号码怎么取吗?

为什么不只count图像?

<?php
    $images = get_field('galerie');
    if($images && is_array($images)) { // in case get_galerie returns null or empty strings when no images...
        echo count($images);
    }
?>

此外,无需在每行上放置<?php ... ?>标签。

将一整块PHP代码封装到这个标签中,它的可读性要高得多,而且工作原理也是一样的。

有一个计数函数。

$length = count($images);

很简单,就这样做:

<?php $images = get_field('galerie'); if( $images ): ?>
  <?php $i=0; foreach( $images as $image ): ?> //$i=0 not 1
  <?php $i++; ?> 
  <?php endforeach; ?>   
  <?php echo $i; ?>
<?php endif; ?>

L.E:对于那些对我的答案投了反对票的人,我保留了用户的编码方式,原因有两个(我认为很明显):

  1. 他可能真的需要foreach()
  2. 他可能是PHP的新手,如果迭代器方法($i = 1; $i++)是他所知道的,他应该坚持使用它,直到发现新的东西。这是一种继承自C、Pascal和其他"老"得多的编程语言的算法方法

当然,count()方法更快,而且在后面的痛苦也更小,但这不是一种为beginer编写代码的坏方法。

希望这能有所帮助!:D

相关内容

  • 没有找到相关文章

最新更新