解決策: 1. 関数にグローバル変数をインポートするには、global キーワードを使用します。構文は「global global variable 1, global variable 2, ...」です。 2. スーパー グローバル変数「$GLOBALS」を使用します。 " 指定されたグローバル変数にアクセスする場合の構文は "$GLOBALS['グローバル変数名']" です。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
通常、内部ではグローバル変数を使用できません。関数 しかし、関数内でグローバル変数を使用しなければならない場合があります。どうすればよいでしょうか?
PHP は、グローバル キーワードと $GLOBALS スーパー グローバル変数という 2 つのソリューションを提供します。
方法 1. グローバル キーワード
<?php $a = 1; $b = 2; $c = 3; function demo(){ global $a,$b,$c; echo '$a = '.$a; echo '<br>$b = '.$b; echo '<br>$c = '.$c; } demo(); ?>
を使用して、出力結果を確認します:
$a = 1 $b = 2 $c = 3
分析:
global キーワードの機能は、グローバル変数をインポートし、グローバル変数 1, 変数 2...
を グローバル変数 1, 変数 2, ...## の形式で関数にインポートすることです。 # 関数のローカル スコープ内では、関数の外で定義されたグローバル変数を関数内で使用できます。
<?php $a = 1; $b = 2; $c = 3; function demo(){ echo '$a = '.$GLOBALS['a']; echo '<br>$b = '.$GLOBALS['b']; echo '<br>$c = '.$GLOBALS['c']; } demo(); ?>出力結果は次のとおりです:
$a = 1 $b = 2 $c = 3分析:
$GLOBALS
は事前定義された変数 (スーパー グローバル変数とも呼ばれます) であり、すべての変数を含むグローバル結合配列です。変数の名前は配列のキーです。次を使用できます。$GLOBALS[ '変数名'] 指定されたグローバル変数にアクセスします。出現したグローバル変数であれば、
$GLOBALS 配列を通じて取得できます。
global と $GLOBALS の違い
global は関数内でのみ使用でき、関数外では使用できません。一方、$GLOBALS は関数内でのみ使用できます。プログラム内で使用 どこでも(関数内外)使用可能です。
以上がphp グローバル変数が関数内で使用できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。