ホームページ >バックエンド開発 >PHPチュートリアル >すべての PHP 関数でグローバル変数を繰り返し宣言せずにアクセスするにはどうすればよいですか?
PHP でのグローバル変数宣言
問題:
PHP スクリプトでは、次のようになります。変数にアクセスする必要がある各関数内で変数をグローバルとして宣言する必要があります。各関数内でグローバルを手動で使用せずに、グローバル変数を一度定義し、すべての関数で同時にアクセスする方法はありますか?
回答:
代替方法は 2 つあります:
方法 1: $GLOBALS を使用する配列:
$GLOBALS 配列は、グローバル スコープで定義されたすべての変数への参照を含む連想配列です。 $GLOBALS を使用してグローバル変数を宣言するには、関数の外で値を代入するだけです:
$GLOBALS['a'] = 'localhost';
一度定義すると、任意の関数で $GLOBALS['a'] にアクセスできます:
function body() { echo $GLOBALS['a']; }
方法 2: プロパティを持つクラスを使用する:
If 関数一連の変数を共有する場合は、それらをプロパティを持つクラスにカプセル化することを検討してください:
class MyTest { protected $a; public function __construct($a) { $this->a = $a; } public function head() { echo $this->a; } public function footer() { echo $this->a; } }
関数の外でクラスをインスタンス化し、メソッド内でそのプロパティにアクセスします:
$a = 'localhost'; $obj = new MyTest($a);
以上がすべての PHP 関数でグローバル変数を繰り返し宣言せずにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。