php循环控制语句
在php中循环语句我们常用的就几种,while,do while ,for(),foreach这四种,也是大家开发中常用到的循环语句了,有需要的朋友可以参考一下,本教程一一来讲一下这种语句的用法.
Foreach语句
Foreach循环是php4.0引进来的,只能用于数组,在php5中,又增加了对对象的支持,该语句的语法格式为:
foreach(array_expression as $value)
statement;
或如下:
Foreach(array_expression as $key => $value) statement; FOREACH ($array_variable as $value) { [code to execute] } //or FOREACH ($array_variable as $key => $value) { [code to execute] }
在这两种情况下,多次[代码执行]将被处死是等于在$ array_variable数组元素的个数,让我们来看一个例子,假设我们有下面的代码段:
$array1 = array(1,2,3,4,5); FOREACH ($array1 as $abc) { print "new value is " . $abc*10 . "<br>"; } //输出结果 //new value is 10 //new value is 20 //new value is 30 //new value is 40 //new value is 50
foreach循环以上经历了所有5个元素的数组$ array1,每次打印出一份声明中含有10倍的数组元素的值.
foreach作用是遍历当前数组的所有值出来并且赋给$var
再来看一个foreach 对多维数据操作实例:
<?php $s = array( array( 1, 2 ) , array( 3, 4 ) , array( 5, 6 ) ); foreach ($s as $v => $_v) { foreach ($_v as $vc => $_vc) { echo $_vc[0], '|' . $_vc[1], '<br />'; //print_r($_vc); } } ?>
for语句
最基于的遍历,代码如下:
<?php /* example 1 */ for ($i = 1; $i <= 10; $i++) { echo $i; } /* example 2 */ for ($i = 1;; $i++) { if ($i > 10) { break; } echo $i; } /* example 3 */ $i = 1; for (;;) { if ($i > 10) { break; } echo $i; $i++; } /* example 4 */ for ($i = 1, $j = 0; $i <= 10; $j+= $i, print $i, $i++); ?>
遍历数组,代码如下:
<?php /* * This is an array with some data we want to modify * when running through the for loop. */ $people = Array( Array( 'name' => 'Kalle', 'salt' => 856412 ) , Array( 'name' => 'Pierre', 'salt' => 215863 ) ); for ($i = 0; $i < sizeof($people); ++$i) { $people[$i]['salt'] = rand(000000, 999999); } ?>
下面再看while与dowhile While循环是php中最简单的循环语句, 他的语法格式是:
While (expression) {
statement;
}
当表达式expression的值为真时, 将执行statement语句, 执行结束后, 再返回到expression表达式继续进行判断, 直到表达式的值为假时, 才跳出循环 . 代码如下:
<?php /* example 1 */ $i = 1; while ($i <= 10) { echo $i++; /* the printed value would be $i before the increment (post-increment) */ } /* example 2 */ $i = 1; while ($i <= 10) : echo $i; $i++; endwhile; ?>
Do…While语句
While语句还有一种形式的表示,Do…While.语法为:
Do{ statement; }While(expression);
两者的区别在于:Do…While语句要比While语句多循环一次。
当While表达式的值为假时,While循环直接跳出当前循环,而Do…While语句则是先执行一遍程序块,然后再对表达式进行判断.
实例代码如下:
<?php do { if ($i < 5) { echo "i is not big enough"; break; } $i*= $factor; if ($i < $minimum_limit) { break; } echo "i is ok"; /* process i */ } while (0); ?>
永久地址:http://www.phprm.com/lckz/fs2976.html
转载随意~请带上教程地址吧^^