関数の引数内で変数を宣言して渡した場合の挙動について
引数に参照渡しを要求している関数の呼び出し時に、
以下のように引数を指定すると値渡し扱いとなりNoticeが表示されてしまいます。
//引数に参照渡しを要求する関数 function hoge(&$var){ echo $var; $var = 'hoge'; } //引数内で変数を定義して渡す hoge($fuga = 'fuga'); //出力 PHP Notice: Only variables should be passed by reference in ...
予め変数を定義し渡すとNoticeは表示されません。
引数内での変数定義と引数外での変数定義でなぜこのような挙動の違いが発生するのでしょうか?
自分で調べてみようと思ったのですが、引数内で変数定義するような記法の呼び方が分からず、
こちらで質問させて頂きました。よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/17 07:47