この記事では、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 中国語 Web サイトの他の関連記事を参照してください。