2009-06-17 22 views
12

consideran este código PHP:¿Qué significa "&" aquí en PHP?

call_user_func(array(&$this, 'method_name'), $args); 

Sé que significa pasar por referencia en la definición de funciones, pero es que cuando se llama a una función?

Respuesta

0

Es un pase por referencia.

+2

¿Estoy en lo cierto al pensar que ya no se aplica desde PHP 5 en adelante? –

+0

Sé que significa paso por referencia al definir funciones, pero ¿es cuando se llama a una función? – omg

+0

@Ian usted está en lo cierto, ha sido desaprobado. – alex

7

Desde la página Passing By Reference docs:

Puede pasar una variable por referencia a una función por lo que la función puede modificar la variable. La sintaxis es la siguiente :

<?php 
function foo(&$var) 
{ 
    $var++; 
} 

$a=5; 
foo($a); 
// $a is 6 here 
?> 

... En las últimas versiones de PHP se le obtener una advertencia diciendo que "llamar a tiempo pase por referencia" es obsoleto cuando se use & en foo (& $ a);