언어는 Apache 2.2 서버에서 PHP 5.4입니다. 그것은 아약스에 의해 호출되는 스크립트입니다.변수가 범위를 벗어나는 이유는 무엇입니까? PHP
$usr = new User();
function getMyName(){
echo $usr->username;
}
getMyName();
어떤 이유로 $ name이 (가) 범위를 벗어납니다. 그게 왜 그랬을까요? 나는 또한 똑같은 결과로 스크립트를 직접 호출하려고 시도했다. 해결을 위해 ($ name) 사용을 시도했지만 익명 함수 (클로저)에서만 작동합니다. 나는이 작업을 수행 할 때
, 그것은 작동하지만 그것은 말도 안 : 또는
$usr = new User();
$name = $usr->username;
function getMyName($n){
echo $n;
}
getMyName($name);
첫 번째 예에서는 $ name이 표시되지 않습니까? 또한 매개 변수를 통해 전달하지 않으면 함수가 $ usr에 액세스하는 방법은 무엇입니까? –
첫 번째 예제에는 $ 이름이 없지만 그 방법도 시도했습니다. 필자가 사용 해본 다른 모든 언어는 C++, Pascal, VB (S), Java ... 등의 언어를 사용할 수 있습니다. – user1632874