ホームページ  >  記事  >  バックエンド開発  >  PHP5.4 の注記: 変数参照のみを参照によって返す必要があります。

PHP5.4 の注記: 変数参照のみを参照によって返す必要があります。

WBOY
WBOYオリジナル
2016-06-20 13:02:17951ブラウズ

PHP5.4 以降の PHP 環境では、次のエラー メッセージが表示される場合があります:

Notice: Only variable references should be returned by reference

どのようなスクリプトがこのようなエラーを引き起こすのでしょうか?例を挙げてみましょう:

<?php
function & foo($param)
{
if($param == 1)
{
return array();
}
return false;
}
var_dump(foo(1));
?>


解決策は次のように非常に簡単です:

<?php
function & foo($param)
{
$result = false;
if($param == 1)
{
$result = array();
}
return $result;
}
var_dump(foo(1));
?>


実際には、上記の Notice エラーが発生しない場合でも、次のコーディング方法に従ってプログラムを作成する必要があります。これは、最初のコードでは複数のリターンがあり、複数の終了があることを意味しますが、2 番目のコードでは複数のリターンが存在するためです。コードのみ プログラムの出口は 1 つだけなので、プログラムが非常に複雑な場合は、2 番目のコードの方が読みやすくなります。 2 番目の方法は if...else... ステートメントですが、それでもこの方法で記述する必要があります。 ^_^


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。