PHP 中的引用赋值运算符,=&

2022-08-30 07:12:56

(等于与号)赋值运算符在 PHP 中做什么?=&

它是否已被弃用?


答案 1

它没有被弃用,也不太可能被弃用。这是标准方法,例如,对一个数组或对象镜像进行部分更改,而不是复制现有数据。

它被称为引用赋值,引用手册的话说,“这意味着两个变量最终都指向相同的数据,并且不会在任何地方复制任何内容”。

一不推荐使用的是在 PHP 5 中“通过引用分配结果”,这可能是任何混淆的根源。 由引用自动分配,因此在 中是冗余/弃用的,但在 中不是=&newnew&$o = &new C;$o = &$c;


由于很难搜索,请注意(等于 & 符号)与(等于空格 & 符号)相同,并且通常编写为会遇到另一个变量,如 or(&符号美元符号变量名称)。从文档中简化的示例:=&= &$x = &$y['z'];$x = &$someVar

$a = 3;
$b = &$a;
$a = 4;
print "$b"; // prints 4

这里有一个方便的链接,指向PHP手册中关于按引用分配的详细部分。该页面是参考文献系列的一部分 - 值得花一分钟时间阅读整个系列。


答案 2

这是两个不同的运算符。 是您可能知道的作业。这意味着变量应该通过引用而不是通过值来访问。=&


推荐