{category}

PHP - スーパーグローバル変数

$GLOBALS

ドルグローバルズ(変数と定数

意味 全てのグローバル変数へのアクセス


$GLOBALSとは?

$GLOBALSは、PHPのスーパーグローバル変数の一つで、スクリプト内のすべてのグローバル変数への参照を含む連想配列です。変数名がキーとなります。

$GLOBALSの具体的な使い方

関数内でのグローバル変数へのアクセスと変更

<?php
$global_var = "グローバル変数の値";

function modify_global() {
    echo "関数内での\$GLOBALS['global_var']の値: " . $GLOBALS['global_var'] . "<br>";
    
    // グローバル変数の値を変更
    $GLOBALS['global_var'] = "変更後の値";
}

echo "関数呼び出し前の\$global_varの値: " . $global_var . "<br>";
modify_global();
echo "関数呼び出し後の\$global_varの値: " . $global_var . "<br>";

👇出力結果

関数呼び出し前の$global_varの値: グローバル変数の値
関数内での$GLOBALS['global_var']の値: グローバル変数の値
関数呼び出し後の$global_varの値: 変更後の値

このコードでは、グローバル変数を定義し、関数内で$GLOBALSを使用してその変数にアクセスし、値を変更しています。$GLOBALSを使用することで、globalキーワードを使わずに関数内からグローバル変数を操作できます。

$GLOBALSを使用した動的な変数名の操作

<?php
$var1 = "Hello";
$var2 = "World";

function print_dynamic_vars($var_names) {
    foreach ($var_names as $var_name) {
        if (isset($GLOBALS[$var_name])) {
            echo $var_name . ": " . $GLOBALS[$var_name] . "<br>";
        } else {
            echo $var_name . " は定義されていません。<br>";
        }
    }
}

$variables_to_print = ['var1', 'var2', 'var3'];
print_dynamic_vars($variables_to_print);

👇出力結果

var1: Hello
var2: World
var3 は定義されていません。

このコードでは、$GLOBALSを使用して動的に変数名を指定し、その値にアクセスしています。配列内の変数名リストを渡すことで、存在する変数の値を表示し、存在しない変数については未定義であることを示しています。

$GLOBALSに関するよくある質問

Q. $GLOBALSの主な用途は?
A. $GLOBALSの主な用途は、関数内からグローバルスコープの変数にアクセスすることです。これにより、globalキーワードを使わずにグローバル変数を操作できます。
Q. $GLOBALSは変更可能ですか?
A. はい、$GLOBALSを通じてグローバル変数の値を変更することができます。ただし、変更すると元のグローバル変数の値も変更されるので注意が必要です。
Q. $GLOBALSのセキュリティリスクは?
A. $GLOBALSを使用すると、スクリプト内のすべてのグローバル変数にアクセスできるため、セキュリティリスクが高くなる可能性があります。必要最小限の使用を心がけましょう。

$GLOBALSが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、PHPの$GLOBALSや$_SESSION、__METHOD__、__FILE__、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


PHPを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!PHPはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

$_SESSION

セッション情報の格納

種類: スーパーグローバル変数

__METHOD__

現在のメソッド名を返す定数

種類: マジック定数

__FILE__

現在のファイルのパス

種類: マジック定数

SELECT

データの取得

種類: SQL基礎

count()

配列の要素数を数える関数

種類: 配列関数