PHP でグローバル変数を宣言する
-
PHP のローカルスコープで
global
キーワードを使用してグローバル変数を宣言する -
PHP のローカルスコープで
$GLOBALS
スーパーグローバル変数を使用してグローバル変数を使用する -
PHP で
define()
関数を使用して定数グローバル変数を定義する
global
キーワードを使用して PHP でグローバル変数を宣言するメソッドを紹介します。このメソッドは、関数の外部で宣言された変数のグローバルスコープをローカルスコープに設定して、関数の内部で変数を使用します。
この記事では、$GLOBALS
スーパーグローバル変数を使用して PHP でグローバル変数を宣言する別の方法を示します。このメソッドは、スーパーグローバル変数を使用して、ローカルスコープのグローバル変数にアクセスします。
また、define()
関数を使用して PHP でグローバル変数を宣言する別のメソッドを示します。このメソッドは、PHP で定数グローバル変数を宣言する方法です。定数の値を変更することはできません。
PHP のローカルスコープで global
キーワードを使用してグローバル変数を宣言する
global
キーワードを使用して、PHP のローカルスコープでグローバル変数を宣言できます。global
キーワードは、グローバルスコープをローカルスコープの変数として設定します。関数の外部で変数を定義できます。関数内の変数にアクセスしようとすると、変数のグローバルスコープでは許可されません。したがって、変数を使用して関数内で global
キーワードを使用できます。次に、関数内の変数にアクセスできます。
たとえば、変数 $crypto
を作成し、それに Bitcoin
を割り当てます。次に、関数 body()
を作成します。関数内で、$crypto
変数の前に global
キーワードを使用します。echo
ステートメントを使用して $crypto
変数を出力し、文字列 is a top cryptocurrency.
がドット演算子 .
を使用して連結します。関数本体の外側で、body()
関数を呼び出します。
以下の例では、$crypto
変数のグローバルスコープを body()
関数内のローカルスコープにインポートします。したがって、関数内の $crypto
変数にアクセスできます。global
キーワードを使用せずに変数を出力しようとすると、変数のローカルスコープが存在しないため、それを実行できません。スコープと global
キーワードの詳細については、PHP マニュアルを確認してください。
サンプルコード:
#php 7.x
<?php
$crypto = 'Bitcoin';
function body(){
global $crypto;
echo $crypto." is a top cryptocurrency.";
}
body();
?>
出力:
Bitcoin is a top cryptocurrency.
PHP のローカルスコープで $GLOBALS
スーパーグローバル変数を使用してグローバル変数を使用する
$GLOBALS
スーパーグローバル変数を使用して、グローバルスコープ変数を参照できます。$GLOBALS
変数は、グローバルスコープで定義された変数の参照を含む連想配列です。$GLOBALS
括弧内に変数を記述して、グローバル変数を $GLOBALS["name"]
として参照できます。このメソッドは、関数内にローカル変数とグローバル変数を出力しようとします。$GLOBALS
スーパーグローバル変数を使用して、関数内のグローバルスコープ内の変数を参照します。
たとえば、変数 $var
を作成し、文字列 global scope variable
を割り当てます。関数 body()
を記述し、関数内に同じ変数 $var
を作成し、今回は文字列 local scope variable
を割り当てます。まず、$var
変数を $GLOBALS
配列で $GLOBALS["var"]
として参照します。次の行で、echo
ステートメントを使用して $var
変数を出力します。
以下の例では、$var
変数を 2 回出力します。1つ目は、$GLOBALS["var"]
配列を使用し、その結果、関数の外部で定義されたグローバル変数を出力します。2 回目は、関数内の変数が表示されます。$GLOBALS
スーパーグローバル変数の詳細については、PHP マニュアルを確認してください。
コード例:
#php 7.x
<?php
$var = "global scope variable";
function body() {
$var = "local scope variable";
echo '$var in global scope: ' . $GLOBALS["var"] . "<br>";
echo '$var in current scope: ' . $var ;
}
body();
?>
出力:
$var in global scope: global scope variable
$var in current scope: local scope variable
PHP で define()
関数を使用して定数グローバル変数を定義する
このメソッドは、define()
関数を使用して PHP でグローバル変数を定義します。この関数は 2つのパラメーターを取ります。最初のパラメーターは定数名で、2 番目のパラメーターは定数の値です。デフォルトでは、定数では大文字と小文字は区別されません。スクリプトのどこからでも定数にアクセスできます。定数を定義する際に $
記号を使用することはありません。名前が示すように、その値は不変です。定数は、値として文字列と数値のみを保持できます。
たとえば、define()
関数を記述し、定数の名前を BAND
、値を Opeth
として指定します。関数 bandName()
を作成し、echo ステートメントを使用して BAND
定数を表示します。関数の外で、関数 bandName()
を呼び出します。スクリプトは値 Opeth
を出力します。define()
関数の詳細については、PHP マニュアルを確認してください。
サンプルコード:
# php 7.x
<?php
define('BAND', 'Opeth');
function bandName()
{
echo BAND;
}
bandName();
?>
出力:
Opeth
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn