【发布时间】:2018-12-06 16:48:05
【问题描述】:
我试图理解 while 和 for each 之间的区别。这两个例子都可以工作,似乎唯一真正的区别是偏好。也许是在这种情况下,但他们的情况是客观上比另一个更好吗?
<?php $rows = get_field('repeater_field_name');
if($rows)
{
echo '<ul>';
foreach($rows as $row)
{
echo '<li>sub_field_1 = ' . $row['sub_field_1'] . ', sub_field_2 = ' . $row['sub_field_2'] .', etc</li>';
}
echo '</ul>';
} ?>
VS.
<?php if( have_rows('repeater_field_name') ): ?>
<ul>
<?php while( have_rows('repeater_field_name') ): the_row(); ?>
<li><?php the_sub_field('sub_field_1'); ?>,<?php the_sub_field('sub_field_1'); ?>, etc</li>
<?php endwhile; ?>
</ul>
【问题讨论】:
-
当使用布尔值执行时,foreach 不会
-
要说某件事是否“客观上更好”,您需要定义“更好”的含义。如果您只是在谈论速度,那么您可以自己测试/基准测试。
标签: php for-loop foreach while-loop