ホームページ  >  記事  >  バックエンド開発  >  PHP関数における参照渡し時の注意事項の分析

PHP関数における参照渡し時の注意事項の分析

不言
不言オリジナル
2018-06-04 17:30:581428ブラウズ

この記事では、PHPの設定ファイルの設定や配列関数の使い方など、PHP関数の値による参照渡しの注意点を中心に紹介していますので、困っている方は参考にしてください

この記事では、PHP関数の参照渡しの注意点について説明しています。物質による移転。参考のために皆さんと共有してください。詳細は次のとおりです:

厳格な基準: 変数のみが参照によって渡される必要があります

オンライン情報で次の文を見つけました:

この問題はphp5.3で発生し、 PHP の設定に関係するので、この文を 2 つの文に分割すれば問題ありません。 array_walkのパラメータは参照渡しのため、バージョン5.3以降ではデフォルトで特定の変数のみを渡すことができ、関数を通じて値を返すことはできません。 もちろん、php.ini の error_reporting = E_ALL | E_STRICT を変更することもできますが、これは結局仕様に準拠していません。

$suffix = array_pop(explode(".",$file_name));

なぜ上位バージョンはこれほど制限されているのですか?

マニュアルの関数プロトタイプを調べました:

mixed array_pop ( array &$array )
bool array_walk ( array &$array , callable $funcname [, mixed $userdata = NULL ] )

& シンボルは、変数が参照によって渡されることを指定します。

$file_name_arr = explode(".",$file_name);
$suffix = array_pop($file_name_arr);

に変更するだけです。

実際のところ、これは単なる警告です。致命的なエラーではありません。正常な結果が得られます。たとえば、ここでファイル名の接尾辞を取得するのが通常です。

関連する推奨事項:

php関数mkdirは、階層ディレクトリを再帰的に作成するメソッドを実装します

php関数参照表

以上がPHP関数における参照渡し時の注意事項の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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