PHP のグローバル変数は有害ですか? [重複]
プログラミングでグローバル変数について議論するとき、PHP ではこの用語が他の言語とは異なる意味を持つことがよくあります。 PHP では、グローバル変数の概念は完全に同じではありません。
ほとんどのプログラミング言語では、グローバル変数はプログラム全体を含む広い範囲を持ちます。ただし、global キーワードを使用して宣言された PHP 変数のスコープは、単一の HTTP リクエスト内でより制限されます。実際、セッション変数であっても、PHP の「グローバル」変数よりも範囲が広く、複数の HTTP リクエストにまたがります。
したがって、PHP のグローバル変数は、従来の意味では真のグローバルではないことに注意することが重要です。そのため、他の言語のグローバル変数に関連する懸念や批判は、PHP には完全には当てはまりません。
関数を利用する場合、多くの場合、メンバー関数を介してオブジェクト メソッドにアクセスできます。たとえば、次の構文を使用できます:
preg_replace_callback('!pattern!', array($obj, 'method'), $str);
このアプローチは、コールバックに関する PHP ドキュメントで詳しく説明されています。 PHP をオブジェクト指向機能で拡張すると、言語の特定の側面が複雑になったり、ぎこちなさを感じたりすることがあります。
結局のところ、PHP でグローバル変数を使用する場合は、実用的な判断に基づいて決定することが重要です。考慮事項。他のプログラミング言語の標準に準拠したり、過度に制限的な OOP モデルを PHP に課したりするのではなく、問題解決、コードの簡素化、メンテナンス、読みやすさなどの要素を考慮してください。コードの有効性と保守性を高めるために、他の言語機能やパラダイムとともにグローバル変数を賢明に使用してください。
以上がPHP の「グローバル」変数は本当に有害ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。