for
具体语法:
for( 初始语句; 条件语句; 后续语句 )
{
...
要执行的代码
...
}
- 初始语句:一般用于声明循环变量,如
$i = 0
,可空。 - 条件语句:循环执行的限制条件,为
true
时继续,为false
时终止。 - 后续语句:每次循环结束时执行的语句,一般用于对循环变量增值,如
$i++
。
「注」:
- 这三者中都可为空(
for( ; ; )
),执行这种语句时相当于做死循环(while(true)
),需要在适当的情况下使用break
终止循环,否则只会在脚本运行时间到达PHP设定的最长运行时间时终止。 - 初始语句和后续语句可为多个语句组成,用「英文逗号」分开。
foreach
用于遍历数组,具体语法有两种:
[1] 仅关注键值,不关注键名:
foreach($array as $value) {
...
要执行的代码
...
}
$array
:数组$value
:依次遍历数组时的键值。
[2] 既关注键名,又关注键值:
foreach($array as $key => $value) {
...
要执行的代码
...
}
$array
、$value
同上。$key
:依次遍历数组时的键名。
「注」:两种语法其实是相似的,就多了个映射出键名的语句。
demo:
<?php
echo "死循环测试:\n";
$i = 0;
for(; ; ) {
echo "\$i = $i\n";
if($i++ == 3) break;
}
echo "\n";
echo "foreach的用法[1]:\n";
$array = array(10, 1, 2, 3, 4, 5);
foreach($array as $value) {
echo "\$value = $value\n";
}
echo "\n";
echo "foreach的用法[2]:\n";
foreach($array as $key => $value) {
echo "\$key = $key ,\$value = $value\n";
}
运行结果如下:
死循环测试:
$i = 0
$i = 1
$i = 2
$i = 3
foreach的用法[1]:
$value = 10
$value = 1
$value = 2
$value = 3
$value = 4
$value = 5
foreach的用法[2]:
$key = 0 ,$value = 10
$key = 1 ,$value = 1
$key = 2 ,$value = 2
$key = 3 ,$value = 3
$key = 4 ,$value = 4
$key = 5 ,$value = 5