これは、グーグルで検索する方法がわからなかった好奇心の質問です。
いくつかの関数は次のようなものです。
function foo()
{
$bar = 'Hello World';
return;
}
何がretun;
返ってきますか?これはちょっとばかげています。
注:パラメータが指定されていない場合は、括弧を省略する必要があり、
NULL
返されます。括弧を付けて引数なしで呼び出すreturn
と、解析エラーが発生します。
それは戻りnull
ます。が変数または値return
なしで呼び出されると、return
が返されnull
ます。
PHPマニュアルページからのメモ
パラメータが指定されていない場合は、括弧を省略する必要があり、NULL が返されます。return() を括弧付きで引数なしで呼び出すと、解析エラーが発生します。
使用している場合
function foo()
{
$bar = 'Hello World';
return;
}
echo $temp=foo();
NULL値を返すより
そして、あなたが使用している場合
function foo()
{
$bar = 'Hello World';
return $bar;
}
echo $temp=foo();
Hello World を返すよりも。
あなたはそれを非常に簡単に理解できたでしょう:
function foo()
{
$bar = 'Hello World';
return;
}
var_dump( foo() );
return
その関数を呼び出した人に制御を返し、NULL
値を返します。したがって、このコードスニペットがある場合
function bar()
{
echo 'bar';
$a = foo();
echo 'foobar';
}
最初に文字列を出力し、次に(ローカル)変数文字列値に割り当てる関数に'bar'
制御が渡されます。次に、この変数は破棄され (関数を終了します)、制御は関数に戻ります。その後、文字列が表示されます。値を持つことに
注意してくださいfoo()
$bar
'Hello World'
bar()
'foobar'
a
NULL