   #PHP Manual References Explained References Explained What References
   Are Not

                  PHP Manual
   Prev Chapter 14. References Explained Next
   ______________________________________________________________________

What References Do

   PHP references allow you to make two variables to refer to the same
   content. Meaning, when you do:

   <?php
   $a =& $b
   ?>

   it means that $a and $b point to the same variable.

     Note: $a and $b are completely equal here, that's not $a is
     pointing to $b or vice versa, that's $a and $b pointing to the same
     place.

   The same syntax can be used with functions, that return references,
   and with new operator (in PHP 4.0.4 and later):

   <?php
   $bar =& new fooclass();
   $foo =& find_var ($bar);
   ?>

     Note: Not using the & operator causes a copy of the object to be
     made. If you use $this in the class it will operate on the current
     instance of the class. The assignment without & will copy the
     instance (i.e. the object) and $this will operate on the copy,
     which is not always what is desired. Usually you want to have a
     single instance to work with, due to performance and memory
     consumption issues.

     While you can use the @ operator to mute any errors in the
     constructor when using it as @new, this does not work when using
     the &new statement. This is a limitation of the Zend Engine and
     will therefore result in a parser error.

   The second thing references do is to pass variables by-reference. This
   is done by making a local variable in a function and a variable in the
   calling scope reference to the same content. Example:

   <?php
   function foo (&$var)
   {
       $var++;
   }
   $a=5;
   foo ($a);
   ?>

   will make $a to be 6. This happens because in the function foo the
   variable $var refers to the same content as $a. See also more detailed
   explanations about passing by reference.

   The third thing reference can do is return by reference.
   ______________________________________________________________________

   Prev                 Home                    Next
   References Explained  Up  What References Are Not
