//格式1
foreach (array_expression as $value){
statement
}
//格式2
foreach (array_expression as $key => $value){
statement
}
<?php
$array = [0, 1, 2];
foreach ($array as $val){
echo "值是:" . $val ;
echo "<br/>";
}
foreach ($array as $key => $value) {
echo "键名是:" . $key . "值是:" . $value;
echo "<br/>";
}
?>
执行以上代码打印的结果是:
值是:0 值是:1 值是:2 键名是:0值是:0 键名是:1值是:1 键名是:2值是:2
<?php
$array = [0, 1, 2];
foreach ($array as $val){
var_dump(current($array));
}
?>
在 PHP 5 中的输出结果为:
int(0) int(1) int(2)
但在 PHP 7 中的输出结果却为:int(0) int(0) int(0)
<?php
$array = [0, 1, 2];
//$ref =& $array; // Necessary to trigger the old behavior
foreach ($array as $val) {
var_dump($val);
unset($array[1]);
}
?>
在 PHP 7 中的输出结果为:
int(0) int(1) int(2)
但在 PHP 5 中的输出结果却为:int(0) int(2)
<?php
$array = [0];
foreach ($array as &$val) {
var_dump($val);
$array[1] = 1;
$array[2] = 2;
}
?>
在 PHP 7 中的运行结果是:
int(0) int(1) int(2)
但在 PHP 5 中的运行结果却是:int(0)
版权说明:Copyright © 广州松河信息科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州松河信息科技有限公司 版权所有