PHP中Array与foreach的作用是什么-创新互联

本篇文章为大家展示了PHP中Array与foreach的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

黄梅网站建设公司创新互联建站,黄梅网站设计制作,有大型网站制作公司丰富经验。已为黄梅1000多家提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的黄梅做网站的公司定做!

1. 了解数组

PHP 中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。详细的解释可参见:PHP.net中的Array数组    。

2.例子:一般的数组

这里,我通过一个简单的例子,并使用图形方式来了解数组。

$a = array(3 => 'a', 1 => 'b', 2 => 'c');

echo var_dump($a);

PHP中Array与foreach的作用是什么PHP中Array与foreach的作用是什么

 [注]:使用箭头描述数组$a各个单元对应某一内存地址的数据值(实际上,它内部结构采用HashTable结构,可以参考鸟哥写的PHP中的Hash算法)。

3.例子:在数组定义中,添加引用。

$x = 'x';
$a = array(3 => 'a', 1 => &$x, 2 => 'c');

echo "
"; echo var_dump($a); $x = 'y'; echo var_dump($a);

数组$a中的第2个单元$a[1]与$x对应的是同一个数据,使用var_dump($a)的时候,会看到数组的第2个单元多个&符号,即&string(1) "x",表示引用。

当 修改$x的值='y',也等同于修改$a[1]的值='y'。

下图可以清楚的描述这一变化:

PHP中Array与foreach的作用是什么

4.例子:使用foreach遍历数组。

$a = array(3 => 'a', 1 => 'b', 2 => 'c');

echo "
"; foreach ($a as $key => $value) {   echo "$key => $value 
"; }

PHP中Array与foreach的作用是什么

每次循环中,当前数组中单元的值被赋给 $value ,单元的key被赋给$key。如下图描述:

PHP中Array与foreach的作用是什么

【注:】灰色虚箭头表示赋予某一值。

 5.例子:在foreach遍历数组中,使用引用赋值。

$a = array(3 => 'a', 1 => 'b', 2 => 'c');

echo "
"; foreach ($a as $key => &$value) {   $value.='n';   echo "$key => $value 
"; }

PHP中Array与foreach的作用是什么

每次循环中, $value 都指向当前数组中单元的值,再执行“ $value.='n'; ”代码 ,如下图描述:

PHP中Array与foreach的作用是什么

6.例子:对例子5的进一步分析。

在例子5,foreach遍历数组完成后,不会自动销毁$value变量,与数组$a最后一个单元$a[2]指向同一个数据。

这时候改变$value的值,也就是改变了$a[2]的值。

$value='m';

echo "
"; echo "\$value=$value 
"; echo var_dump($a);

PHP中Array与foreach的作用是什么

PHP中Array与foreach的作用是什么

实例验证, 数组最后一个元素的$value 引用在foreach 循环之后仍会保留。建议使用 unset() 来将其销毁。

上述内容就是PHP中Array与foreach的作用是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


标题名称:PHP中Array与foreach的作用是什么-创新互联
路径分享:http://bzwzjz.com/article/dssiji.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 定制网站建设 LED网站设计方案 成都定制网站建设 成都网站建设公司 温江网站设计 网站制作 重庆企业网站建设 四川成都网站设计 成都响应式网站建设 阿坝网站设计 成都网站设计 成都商城网站制作 网站建设开发 公司网站建设 攀枝花网站设计 重庆手机网站建设 宜宾网站设计 成都网站设计 手机网站建设 手机网站制作设计 成都网站设计公司 温江网站设计