foreach ($array as $value) {
code to be executed;
}
VS
<?php foreach($arr as $item):?>
<!--do stuff -->
<?php endforeach; ?>
在使用brackets
循环时,我主要使用foreach(){...}
,但是foreach(): ... endforeach;
循环的作用是什么?
这两种类型foreach(){} vs foreach():...endforeach;
之间是否有区别,或者在php中它们是相同的?
以及在哪种情况下我们使用了它们,或者它们之间在技术上有什么不同?
哪种方法是循环结果集的更好方法?
感谢您的帮助。
答案 0 :(得分:3)
它们完全是同一事物,具有两种不同的语法。
PHP为它的某些控制结构提供了一种替代语法。 即,是否 foreach ,然后进行切换。在每种情况下,基本 备用语法的形式是将左大括号更改为冒号 (:)以及endif;,endwhile;,endfor;, endforeach ;、 或endswitch;
。
参考:https://php.net/manual/en/control-structures.alternative-syntax.php
答案 1 :(得分:0)
阅读我的评论。这些输出相同的东西:
必须回显或打印
<?php
$array = ['text1', 'text2', 'text3', 'text4'];
foreach($array as $value) {
echo "<div>$value</div>";
}
?>
不需要回声或打印HTML (不是由PHP生成)
<?php foreach($array as $item): ?>
<div><?php echo $item; ?></div>
<?php endforeach; ?>
启用了短标签(自PHP 5.4起,<?=?>不需要此标记)
<? foreach($array as $item): ?>
<div><?=$item?></div>
<? endforeach; ?>
答案 2 :(得分:-1)
第一个用于执行纯PHP代码。
第二个对于输出HTML很有用,如您所见,<!--do stuff -->
是HTML注释