PHP中$var2 =& $var与$var2 = &$var的区别及最优写法
PHP引用赋值两种写法的区别与优劣
这两种写法在PHP里完全没有功能差异,都是用来给变量创建引用的语法。
PHP的语法解析器会自动忽略赋值运算符=和引用符号&之间的空格,不管你写=&还是= &,最终都会被解析成同一个引用赋值操作。拿你给的代码举例:
$var = 69; $var2 =& $var; // 和下面这段代码的效果完全一致 $var = 69; $var2 = &$var;
你可以测试一下,修改$var的值后,$var2会同步变化,两种写法的执行结果没有任何区别。
至于哪种写法更优,从代码可读性和编码规范的角度,更推荐$var2 = &$var这种带空格的写法。把空格放在=和&之间,能更清晰地把赋值操作和引用标识区分开,让代码结构一目了然,这也是大多数PHP项目(包括遵循PSR规范的项目)更倾向的写法。
内容的提问来源于stack exchange,提问作者Marcelo Raineri
相关产品推荐
相关产品推荐

