PHP使用相同的变量后通过引用传递错误

2023-12-11

看一下这段代码,帮助我理解结果

$x = array('hello', 'beautiful', 'world');
$y = array('bye bye','world', 'harsh');

foreach ($x as $n => &$v) { }

$v = "DONT CHANGE!";

foreach ($y as $n => $v){ }

print_r($x);
die;

它打印:

Array
(
    [0] => hello
    [1] => beautiful
    [2] => harsh
)

为什么它会改变 $x 的最后一个元素?它只是不遵循任何逻辑!


该循环执行后:

foreach ($x as $n => &$v) { }

$v最终作为参考$x[2]。无论你分配给什么$v实际上被分配了$x[2]。因此,在第二个循环的每次迭代中:

foreach ($y as $n => $v) { }

$v(或者我应该说$x[2]) 变为:

  • 'bye bye'
  • 'world'
  • 'harsh'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP使用相同的变量后通过引用传递错误 的相关文章

  • 根据 WooCommerce 中的订单数量设置折扣

    在WooCommerce中 如何根据订单数量设置折扣 例如 我想根据客户订单应用折扣 首单折扣 50 美元 第二次订购折扣 30 美元 第三次订购折扣10美元 我搜索过互联网但没有找到任何可用的解决方案或插件 Thanks 这是一个挂钩的自
  • Laravel Valet 不工作。 127.0.0.1 连接被拒绝

    试图让代客泊车设置正常工作 当访问 127 0 0 1 时 连接被拒绝 这是我在访问 dev 站点设置之一时收到的消息 我已经确保 apache 已停止 并且一直在谷歌上搜索所有地方 但无法找到解决方案 有没有人遇到过这个或对下一步尝试什么
  • 根据产品变体术语将收件人添加到 Woocommerce 电子邮件通知

    我创建了一个 Woocommerce 插件并要求它做两件事 根据购物车中的产品变体 向特定电子邮件地址发送通知消息 电子邮件必须仅包含相关产品 不得包含其他属性的产品 例如 产品 A 具有名为 Chef 的属性 其中 Chef one 和
  • 如何使用 facebook 用户登录我的网站?

    我想知道 facebook 如何让用户登录我们的网站 我的意思是用户需要注册到我的网站才能发表评论 我如何通过我的 php 代码检查它是否是登录用户 我听说你只能用javascript检查它是否是登录用户 感谢您的任何解释 您可以使用脸书
  • InvalidArgumentException 与 UnexpectedValueException

    我应该什么时候使用无效参数异常 http www php net manual en class invalidargumentexception php什么时候意外值异常 http www php net manual en class
  • exec()、shell_exec()、curl_exec() 的安全漏洞

    有时 我会使用 exec shell exec 和curl exec 以下是典型用途 假设其中有 PHP 变量 即第一个变量中的 html 用户有可能修改其内容 从安全漏洞的角度来看 我应该关注什么 escapeshellcmd 和 esc
  • 将 php filter_var 与 mysql_real_escape_string 结合使用

    我想首先说 我意识到 PDO mysqli 是新标准 并且已被 SO 广泛覆盖 然而 在这种特殊情况下 我没有时间在启动客户端站点之前将所有查询转换为 PDO 以下内容已在网站上的大多数查询中使用 我可以补充一下 这不是我所使用的 user
  • 使用 chr + rand 生成随机字符 (A-Z)

    我使用以下命令生成 A Z 的随机字符 但它偶尔会生成 符号 知道如何防止这种情况吗 也许字符范围不正确 letter chr 64 rand 0 26 用这个就更方便了 大写 letter chr rand 65 90 小写 letter
  • 使用服务帐户插入 Google 日历条目

    我正在尝试使用服务帐户在 Google 日历上创建条目 我真的很接近这一点 但最后一行行不通 我得到一个500 Internal Service Error当我让它运行时 否则 程序运行时不会出错 无论其价值如何 The Calendar
  • 句子中模糊的电子邮件地址

    我正在输出日志消息 需要隐藏其中的电子邮件地址 日志消息可能如下所示 A lead was saved for email protected cdn cgi l email protection Date 11th December 20
  • 如何在 Laravel 5.3 中进行自定义身份验证

    我在 Laravel 5 3 自定义身份验证中遇到问题 希望在检查时使用我自己的函数或页面Auth check 它返回false 这是用户控制器 namespace App Http Controllers use App User use
  • 如何解码这个 JSON 字符串?

    这是我从 feed finder url 中得到的字符串 JSON 编码 updated 1265787927 id http www google com reader api 0 feed finder q u003dhttp itca
  • PHP session_destroy() 警告会话对象销毁失败[重复]

    这个问题在这里已经有答案了 我有这个 php 脚本 但在破坏会话时遇到问题 我收到这个警告 警告 session destroy 会话对象销毁失败 第 6 行 C xampp htdocs template nota finalizare
  • 将 Php 数组编码为 json [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想对我的 php 数组进行编码 A
  • 为什么 count 比 $count 差

    我只是在查看不同问题的答案以了解更多信息 我看到一个answer https stackoverflow com a 4891402 429850这表明在 php 中编写这样的做法是不好的做法 for i 0 i
  • PHP 7.2 计数错误

    警告 count 参数必须是数组或对象 实现 Countable in 我在以下行中收到上述错误 if 0 gt count this gt xprop 有人可以帮助我理解这一点吗 我对 PHP 还很陌生 问题显然是 this gt xpr
  • MySQL LAST_INSERT_ID() 和 FOUND_ROWS()

    当 PHP 脚本每秒有数百个查询时会发生什么 它会影响这些函数吗 是否保证它们会返回当前脚本中最后一个插入语句中最后插入的 id 它会返回当前脚本中最后一次选择的行数吗 如果同时从另一个脚本进行新的插入或选择 在 FOUND ROWS 的情
  • 如何访问带有美元符号的 PHP 对象属性?

    我有一个 PHP 对象 其属性中有一个美元 符号 如何访问该属性的内容 例子 echo object gt variable Ok echo object gt variable WithDollar Syntax error With 变
  • 使用 Laravel Socialite 登录 facebook

    然而 我是 Laravel 的新手 我正在遵循以下教程http www codeanchor net blog complete laravel socialite tutorial http www codeanchor net blog
  • Apache LOG:子进程 pid xxxx 退出信号分段错误 (11)

    Apache PHP Mysql Linux 注意 子进程 pid 23145 退出信号分段错误 11 tmp 中可能存在 coredump 但 tmp下没有找到任何东西 我怎样才能找到错误 PHP 代码中函数的无限循环导致了此错误

随机推荐

  • Google Bigquery:不兼容的表分区规范

    在从未分区的临时表提交复制作业到按天分区的最终表时 我收到 cause java io IOException ErrorMessage Incompatible table partitioning specification Expec
  • 如何告诉 R 在 Windows 中使用代理自动配置脚本 (PAC)

    我无法使用连接到 Internet 上另一个 URL 的 R 函数 例如read html url exists等 并为我可以从浏览器连接的页面获取超时等 我相信这是因为 R 没有使用我的办公室网络中强制的代理设置 我看过另一个关于R设置代
  • 从构造函数的初始值设定项列表中捕获异常

    这是一个好奇的 我有一个类 A 它有一个类 B 的项目 我想使用初始化列表在 A 的构造函数中初始化它 如下所示 class A public A const B b mB b private B mB 有没有办法在仍然使用初始化列表方法的
  • 构造函数中的默认参数

    我可以在这样的构造函数中使用默认参数吗 Soldier int entyID int hlth 100 int exp 10 string nme entityID entyID globalID health hlth experienc
  • 是否可以在 Orchard CMS 中使用剃刀布局并绕过主题

    一点背景知识 我们最近有一个很多人使用的 MVC4 Web 应用程序 我们希望将其移植到 Orchard CMS 尽管这是 管理 类型的应用程序 但我们不希望它成为 Orchard 管理部分的一部分 该应用程序目前已上线 我们希望最终用户尽
  • 导入错误:无法导入名称 chardet

    嗨 我写了一个Pythonscraper我在其中导入 requests 和 Beautiful soup 模块 我正在使用 python2 7 我正在使用 py2exe 模块从我的 Python 脚本创建 Windows 可执行文件 exe
  • 允许在 Django Admin 中编辑 editable=False 字段

    DRF 将使用editable False在字段上将序列化器默认为只读 这是我利用的一个非常有用 安全的默认值 即我不会忘记将序列化器设置为只读 话虽这么说 一旦我设定了editable False有什么方法可以强制 Django 管理员允
  • 字符串加号运算符的线程安全性,包括优化

    这个帖子说a b相当于 a new StringBuilder append a append b toString 假设我有这个代码 public class MultiThreadingClass extends SomeThirdPa
  • 将 JSON 数据放入列表中

    我的 JSON 数据正确地来自我的服务器 我只想将其放入以下数组中 但我不确定 JSON 数据是否正确插入到 ArrayList 中 这是数组 private List
  • UWP 拉伸 GridView

    如何水平拉伸GridViewItem 尝试设置属性HorizontalContentAlignment或样式属性ItemContainerStyle 这没有帮助 这是一个代码
  • 使用 slf4j 读取 .properties 文件

    我想使用 slf4j 从 properties 文件中读取数据 我能够在控制台上输出数据 但我想要的是在某个文件上输出数据 所以我需要在 properties 文件中声明的文件 Appender 并且我我无法使用 slf4j 读取 prop
  • 证书如何避免中间人攻击?

    我还有一个关于网络安全的问题 如果我理解正确的话 证书是为了识别你的真实身份 所以中间人的攻击是不可能的 但当我看到这张图片时 http upload wikimedia org wikipedia commons thumb 2 2b D
  • 获取等于 php 十六进制字符串的 C# 字节数组

    所以我现在不允许修改这段php代码 主要是因为它很旧并且工作正常 Warning 总体来说代码非常糟糕 IV 没有被随机化 也没有与输出一起存储 我问这个不是因为我想 我问是因为我需要 当我开始工作时 我还计划进行重构 并使用真正可靠的加密
  • 具有 AUTO_INCRMENT 主 ID 的 MySQL 表在回滚后不会释放该数字

    我有一张桌子 上面有账单 每张账单都有一个 ID 该 ID 在我插入新记录后来自数据库 该字段是一个设置了 AUTO INCRMENT 的 INTEGER 如果我插入一条新记录作为事务的一部分并且必须回滚该事务 则 ID 将被占用并消失 因
  • 中带有 List 的动态列

    我正在尝试生成一个dataTable动态地使用列 所以我有一个List
  • Xamarin Forms 滑动按钮

    我希望在我的应用程序中添加一个滑动功能 该功能与 旧 iPhone 上的解锁机制几乎相同 参见图片 我正在努力解决如何在跨平台解决方案上实现这一点 我的直接想法是使用滑块和自定义渲染器 但不确定如果用户在完成幻灯片之前放手 如何创建捕捉以启
  • 在 AVPlayer 框架中播放 3gp 视频的已知问题?

    AVPlayer 无法在设备上播放 3gp 文件是否存在任何已知问题 mp4 文件可以正常播放 但无法从设备上的 URL 播放 3gp 文件 Thanks 如果重要的话 我使用的是 iOS 9 Swift 3 AVPlayer 或 AVPl
  • 使用手动 where 语句具有多个更新条件的 Codeigniter 模型

    我在模型中有返回数据的代码 this gt db gt select title content date where name Joe AND status boss this gt db gt where where query thi
  • SQL Server - 如何选择每个用户的最新记录?

    我正在尝试执行一个 SQL 命令 该命令应该绘制进入数据库的最后一行 基本上 当用户提交最后一个帖子 就像在这个论坛中 时 它会将用户重定向到一个页面 其中包含他的帖子标题 帖子段落以及用户名和帖子提交时间等数据 我开始研究声明 SELEC
  • PHP使用相同的变量后通过引用传递错误

    看一下这段代码 帮助我理解结果 x array hello beautiful world y array bye bye world harsh foreach x as n gt v v DONT CHANGE foreach y as