title: Why is function call by reference in PHP deprecated?
body: <p>I wrote the following code:    </p>
  
  <pre><code>&lt;?php
      $a1 = "WILLIAM";
      $a2 = "henry";
      $a3 = "gatES";
  
      echo $a1." ".$a2." ".$a3. "&lt;br /&gt;";
  
      fix_names($a1, $a2, $a3);
  
      echo $a1." ".$a2." ".$a3;
  
      function fix_names(&amp;$n1, &amp;$n2, &amp;$n3)
      {
          $a1 = ucfirst(strtolower(&amp;$n1));
          $a2 = ucfirst(strtolower(&amp;$n2));
          $a3 = ucfirst(strtolower(&amp;$n3));
  
      }
  
      ?&gt;
  </code></pre>
  
  <p>I received this notice: Deprecated: Call-time pass-by-reference has been deprecated</p>
  
  <p>I need an explanation why did I receive this notice? And why in PHP Version 5.3.13, this has been deprecated? </p>