無名関数内で外側のスコープの変数へアクセスする時の違い(JavaScript, PHP 5.3以降) JavaScriptでは、あるスコープ内で指定された変数が見つからない時、自動的に外側のスコープへ探しに行きます。 従って、以下のコードを実行すれば、 function test(){ var hello = "Hello, world!"; var myFunc = function(){ console.log(hello); }; myFunc(); } test(); Hello, world! このような結果が得られ、無名関数内から外側のスコープの変数にアクセスできていることがわかります。 しかし、これをPHPて同じように書いて実行すると、 <?php function test(){ $hello = "Hello, world!"; $myFunc = function(){