Betrachten Sie diese PHP-Code:Was bedeutet "&" hier in PHP?
call_user_func(array(&$this, 'method_name'), $args);
Ich weiß, es bedeutet Pass-by-Referenz, wenn Funktionen definieren, aber es ist, wenn eine Funktion aufgerufen wird?
Betrachten Sie diese PHP-Code:Was bedeutet "&" hier in PHP?
call_user_func(array(&$this, 'method_name'), $args);
Ich weiß, es bedeutet Pass-by-Referenz, wenn Funktionen definieren, aber es ist, wenn eine Funktion aufgerufen wird?
Es ist ein Pass-by-Referenz.
Von der Passing By Reference docs Seite:
Sie eine Variable als Verweis übergeben kann auf eine Funktion, so kann die Funktion die Variable ändern. Die Syntax lautet wie folgt :
<?php
function foo(&$var)
{
$var++;
}
$a=5;
foo($a);
// $a is 6 here
?>
... In den letzten Versionen von PHP finden Sie eine Warnung erhalten, dass "Call-Zeit Pass-by-reference" ist veraltet, wenn Sie Verwenden Sie & in foo (& $ a);
Bin ich der Meinung, dass es ab PHP 5 nicht länger gilt? –
Ich weiß, es bedeutet Pass-by-Reference bei der Definition von Funktionen, aber ist es beim Aufruf einer Funktion? – omg
@Ian du bist richtig, es ist veraltet. – alex