加入收藏 | 设为首页 | 会员中心 | 我要投稿 成都站长网 (https://www.028zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP foreach循环使用详解与实例代码

发布时间:2022-12-14 15:04:57 所属栏目:PHP教程 来源:网络
导读: PHP foreach循环使用详解与实例代码
更新时间:2010年05月08日 20:09:27 作者:
在PHP中的foreach是用来进行循环对一个数组的所有元素。
foreach基本语法如下:
FOREACH ($array_variable

PHP foreach循环使用详解与实例代码

更新时间:2010年05月08日 20:09:27 作者:

在PHP中的foreach是用来进行循环对一个数组的所有元素。

foreach基本语法如下:

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 . "

";

}

输出结果

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 对多维数据操作实例

复制代码 代码如下:

$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],'

';

//print_r($_vc);

}

}

先来看一下foreach的语法:

复制代码 代码如下:

foreach ($array as $key=>$value)

{

……

}

为了便于理解,我们假定这里的$array是一个一维的相关数组,$key是数组的索引,$value是这个索引的值,它们的名字可以随意,之所以叫$key和$value是为了便于理解。为了能让你更好的理解foreach的工作过程,我们来创建一个数组:

$array = array('first'=>'ibm','second'=>'hp');

现在我们模拟PHP服务用foreach对$array进行遍历:

复制代码 代码如下:

foreach ($array as $key=>$value)

{

echo $key.'=>'.$value;

}

第一次循环,$key = 'first',$value = 'ibm',这个时候,实际foreach对$array执行了一个我们看不见的操作:next($array),将数组指针向前(这里的“向前”跟PHP手册相同,不是我们通常所理解的“向前”)移一。然后echo语句输出"first=>ibm"。

第二次循环,首先会判断数组$array的当前指针是否已经到了数组的末尾php循环,如果是,结束循环,否则进入第二次循环。当然这样的判断在进入第一次循环的时候也会有,如果$array是一个空数组,那么就会直接执行循环下面的语句。此时,$key = 'second','value' = 'hp',next($array)后,输出"second=>hp"。然后进行判断,数组指针已经到达末尾,执行下面的语句。

到这里你应该对foreach循环有所了解了吧?还有一点需要的是,foreach每次只是传递一个值,而不是真的对数组元素进行操作。具体到上面的例子,如果你想在每个数组元素的后面加上 'company' 这个字符串,那么$value .= 'company'这样的操作是不行的,它并不会改变数组元素的值,这个时候你应该这样用:$array[$key] .= 'company';

更多可以参考:php foreach

php foreach、while性能比较

php 循环

(编辑:成都站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!