废话不说,上代码

$arrayName = array(
        '0' => array(
        '1' =>"houzi" ,
        '2' =>"xiaogou"
        ) ,
        '1' => array(
        '2' =>"houzi" ,
        '3' =>"xiaogou" )
        );
var_dump($arrayName);
foreach ($arrayName as $key => &$value) {
$value[2]="xiugua";
}
var_dump($arrayName);exit;

结果:

array (size=2)0 => array (size=2)1 => string 'houzi' (length=5)2 => string 'xiaogou' (length=7)1 => array (size=2)2 => string 'houzi' (length=5)3 => string 'xiaogou' (length=7)
array (size=2)0 => array (size=2)1 => string 'houzi' (length=5)2 => string 'xiugua' (length=6)1 => &array (size=2)2 => string 'xiugua' (length=6)3 => string 'xiaogou' (length=7)


手册说明
可以很容易地通过在 $value 之前加上 & 来修改数组的元素。此方法将以引用赋值而不是拷贝一个值。
<?php $arr = array(1, 2, 3, 4); foreach ($arr as &$value) {     $value = $value * 2; } // $arr is now array(2, 4, 6, 8) unset($value); // 最后取消掉引用 ?>
$value 的引用仅在被遍历的数组可以被引用时才可用(例如是个变量)。以下代码则无法运行:
<?php foreach (array(1, 2, 3, 4) as &$value) {     $value = $value * 2; } ?>
Warning

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

Note:

foreach 不支持用“@”来抑制错误信息的能力。

												

foreach之引用的使用相关推荐

  1. PHP中Foreach在引用时的陷阱

    这个陷阱在PHP里存在很久了,先看代码: <?php $array = array(1, 2, 3); foreach ($array as &$v) {} foreach ($arra ...

  2. 谨慎使用PHP的引用

    引用类型(Reference)在许多计算机语言中都被使用,而且是作为一个非常强大而实用的特性存在.它有类似指针(Pointer)的实现,却又有不同于指针的表现.例如C++的引用,可以让不同变量指向同一 ...

  3. php foreach 符号,关于php:php-foreach循环中变量之前的符号

    本问题已经有最佳答案,请猛点这里访问. Possible Duplicate: Reference - What does this symbol mean in PHP? 我需要知道为什么在fore ...

  4. Java中foreach循环两种实现原理

    一.foreach循环Iterator模式 首先我们看一个foreach循环的main方法 import java.util.Collections; import java.util.List; i ...

  5. 总结PHP 7新增加的特性

    ?? 运算符(NULL 合并运算符) 把这个放在第一个说是因为我觉得它很有用.用法: $a = $_GET['a'] ?? 1;它相当于: <?PHP $a = isset($_GET['a'] ...

  6. php7 php5.6 array,[转]php5.6 升级到php7及变化

    不向后兼容的变更 错误和异常处理相关的变更 在 PHP 7 中,很多致命错误以及可恢复的致命错误,都被转换为异常来处理了. 这些异常继承自 Error 类,此类实现了 Throwable 接口 (所有 ...

  7. 还看不懂同事的代码?Lambda 表达式、函数接口了解一下

    本文经授权转载自微信公众号:未读代码 Java 8 早已经在2014 年 3月 18日发布,毫无疑问 Java 8 对 Java 来说绝对算得上是一次重大版本更新,它包含了十多项语言.库.工具.JVM ...

  8. Velocity User Guide 用户手册

    转自:http://blog.csdn.net/gaojinshan/article/details/23945879 官方网址:http://velocity.apache.org/engine/d ...

  9. PHP特性整合 php7特性

    PHP7 已经出来1年了,PHP7.1也即将和大家见面,这么多好的特性,好的方法,为什么不使用呢,也希望PHP越来越好.  在这里整理 PHP 5.1 ,PHP5.2,PHP5.3,PHP5.4,PH ...

最新文章

  1. 带你入门Python数据挖掘与机器学习(附代码、实例)
  2. 实习日记7.13-7.14
  3. jQuery中slice()方法用法实例
  4. 通过正则表达式验证日期
  5. UDP协议抓包分析 -- wireshark
  6. 聚类算法(五)--层次聚类(系统聚类)及超易懂实例分析
  7. 培训是一种乐趣(3)
  8. Krpano skin_settings解释
  9. 晟数学院 oracle,Oracle 控制文件存储解析
  10. c#+mysql图片存数据库_C#图片存入数据库及其读出显示
  11. cmd sc命令进行服务操作
  12. asp.net页生命周期图解---msdn
  13. Nagios 监控系统架构
  14. python安装模块方法_Python模块安装方法
  15. wps怎么关闭那个登录界面_关闭wps窗口快捷键是什么?
  16. CSDN:2020 年度 CSDN 博客之星评选——28 号【沉默王二】,感谢你投上的宝贵一票,感谢!
  17. 计算机没有有效的ip配置,win7电脑没有有效的ip配置怎么办
  18. JavaScript函数式编程入门-计算器应用
  19. GC策略笔记备忘(被namenode所迫)
  20. 如何快速验证你的创业想法是否可行?这里有7大策略

热门文章

  1. 获取字段_数据库中敏感字段的标记、标示
  2. 32位linux系统支持多大内存吗,linux32位操作系统支持大内存
  3. 判断语句_如何学好C语言判断语句?攻略if语句是第一步
  4. scikit-learn——快速入门 - daniel-D(转)
  5. LeetCode--434--字符串中的单词数
  6. github get 请求指定页面的代码
  7. C++雾中风景4:多态引出的困惑,对象的拷贝?
  8. DocBook vs Apache Forrest
  9. 动画分析步骤“三步曲”
  10. Atitit  从 RGB 到 HSL 或 HSV 的转换