グローバル変数

グローバル変数とは、関数の外部で定義した変数。関数の内部でも外部でも、プログラム全体で呼び出せる。

関数の内部で呼び出すには、グローバル宣言するか、定義済み変数「$GLOBALS」を使用する必要がある。

グローバル変数を定義

関数の外部で定義する。

<?php
$var = 'サンプル'; // グローバル変数を定義
function sample() {
    // 関数内部
}
?>

グローバル変数を関数の内部で呼び出す

グローバル変数を、関数の内部で呼び出すには、グローバル宣言するか、$GLOBALSを使用する必要がある。

グローバル宣言

<?php
$var = 'サンプル'; // グローバル変数を定義
function sample() {
    global $var; // グローバル宣言
    echo $var; // グローバル変数「$var」の値「サンプル」を出力
}
sample();
?>

↓↓↓出力結果↓↓↓

サンプル

$GLOBALSを使用

<?php
$var = 'サンプル'; // グローバル変数を定義
function sample() {
    echo $GLOBALS[var]; // グローバル変数「$var」の値「サンプル」を出力
}
sample();
?>

↓↓↓出力結果↓↓↓

サンプル

サンプル

関数内部でグローバル宣言しないグローバル変数は、その関数内部で呼び出せないことに注目。

<?php
$globalVarA = 'グローバル変数A'; // グローバル変数を定義
$globalVarB = 'グローバル変数B'; // グローバル変数を定義
function sample() {
    global $globalVarA; // グローバル宣言
    echo '<p>【関数内部から呼び出し】</p>';
    echo '<p>関数内部でグローバル宣言したグローバル変数($globalVarA): ' . $globalVarA . '</p>';
    echo '<p>関数内部でグローバル宣言しなかったグローバル変数($globalVarB): ' . $globalVarB . '</p>';
    echo '<p>$GLOBALSを使用($GLOBALS[globalVarB]): ' . $GLOBALS[globalVarB] . '</p>';
}
sample();
echo '<p>【関数外部から呼び出し】</p>';
echo '<p>グローバル変数($globalVarA): ' . $globalVarA . '</p>';
echo '<p>グローバル変数($globalVarB): ' . $globalVarB . '</p>';
echo '<p>$GLOBALSを使用($GLOBALS[globalVarB]): ' . $GLOBALS[globalVarB] . '</p>';
?>

↓↓↓出力結果↓↓↓

【関数内部から呼び出し】
関数内部でグローバル宣言したグローバル変数($globalVarA): グローバル変数A
関数内部でグローバル宣言しなかったグローバル変数($globalVarB):
$GLOBALSを使用($GLOBALS[globalVarB]): グローバル変数B
【関数外部から呼び出し】
グローバル変数($globalVarA): グローバル変数A
グローバル変数($globalVarB): グローバル変数B
$GLOBALSを使用($GLOBALS[globalVarB]): グローバル変数B

スポンサード リンク

カテゴリー: PHP, 変数 タグ: パーマリンク