function a()
{
$demi = '局部变量';
b($demi);
}
function b($args)
{
echo $args;
}
a();
Alle Funktionen und Klassen in PHP haben einen globalen Geltungsbereich und können innerhalb einer Funktion definiert und außerhalb aufgerufen werden und umgekehrt.
Warum kann Funktion b die lokalen Variablen von Funktion a durch Übergabe von Parametern erhalten?
function tesxt()
{
$var = 10;
$echonumber = function($num) {
echo $num;
};
$echonumber($var);
}
tesxt();
Und warum erhalten anonyme Funktionen auch Variablen externer Funktionen durch Übergabe von Parametern?
其实是这样的。当你调用函数的时候,你传的参数其实是一个副本,值复制,相当于另外一个变量,没有任何关系。
同理匿名函数也是一样的。但是你如果想要在匿名函数中使用外部变量,是无法访问的。