2016-08-11 137 views
0

指针和引用之间是否有区别? 什么时候应该使用参考?PHP参考和指针

实际上这个语法的作用是什么?

$a = &$b 
+0

即问题是关于通过引用传递给函数。这里解释变量,指针和引用之间的区别。 –

回答

1

请勿使用参考文献!他们可能会导致意想不到的行为。

PHP.net经常提到的PHP 5 OOP的一个关键点是“对象通过引用默认传递”。这并不完全正确。

有指针和引用,你可以看到它下面的例子。

  • $ A =新stdClass的($ A现在是一个指针至#168)
  • $ B = $ A($ B现在是一个指针,但它仍然指向#168)
  • $ C = & $一个($ C现在是一个参考为指针$ A)
  • 你不能区分$ b。从$ C
  • $ A =零,这只是不是指针了,只是空
  • #168保持,因为有指向它留下
  • $ B仍然是一个指针#168
  • $ C现在是空

这种行为很危险,因为它会改变你不接触的变量。

$b === $c // returns true 
$youCantSayThisVariableIsRelated = null 
$b === $c // returns false! 

enter image description here