ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
本稿は PHP のスーパーグローバル変数に関する記事です。スーパーグローバル変数とは、PHP があらかじめ定義しスクリプト実行時に自動で値を代入してくれる組み込み変数で、関数の中でも global 宣言なしで参照できるのが特徴です。
各変数の詳細は子ページを参照してください。
本ページの子ページ
- $_GET — URL のクエリパラメータ
- $_POST — POST されたフォームデータ
- $_SERVER — サーバ/実行環境情報
- $_SERVER — 補足ページ
- $_COOKIE — クライアントから送られた Cookie
- $_ENV — 環境変数
- $_FILES — アップロードされたファイル情報
スーパーグローバル変数の一覧
| 変数 | 内容 |
|---|---|
$GLOBALS | すべてのグローバル変数への参照 |
$_SERVER | サーバ情報、ヘッダ、パス、スクリプト位置 |
$_GET | URL のクエリパラメータ |
$_POST | POST 送信されたパラメータ |
$_FILES | アップロードファイルのメタ情報 |
$_COOKIE | HTTP Cookie |
$_SESSION | セッション変数 (session_start() 後に有効) |
$_REQUEST | $_GET、$_POST、$_COOKIE の統合 (推奨されない) |
$_ENV | 環境変数 |
基本的な使い方
|
<?php |
セキュリティ上の注意
- 外部入力は信用しない —
$_GET/$_POST/$_COOKIEはクライアントが自由に書き換えられる - 必ずバリデーション・サニタイズ: 表示時は
htmlspecialchars()、SQL はプレースホルダ $_REQUESTは出所が混ざるため使用を避ける (どこから来た値か追跡しにくい)- セッション ID は HTTPS + HttpOnly + SameSite で保護
$_SERVER['HTTP_*']系はクライアント送信の生ヘッダ。HOST やリファラ等は改ざん可能- アップロードファイルは
$_FILES[..]['tmp_name']経由で取得し、move_uploaded_file()で保存する
主要な $_SERVER の代表的キー
| キー | 用途 |
|---|---|
REQUEST_METHOD | HTTP メソッド (GET / POST / 等) |
REQUEST_URI | リクエストされた URI |
QUERY_STRING | クエリ文字列 |
HTTP_HOST | ホスト名 |
HTTP_USER_AGENT | UA |
HTTP_REFERER | 遷移元 (改ざん可能・スペル注意) |
REMOTE_ADDR | クライアント IP |
SERVER_NAME | サーバ名 |
HTTPS | HTTPS で接続されたか |
SCRIPT_NAME / SCRIPT_FILENAME | 実行中スクリプトのパス |
フレームワーク利用時の注意
- Laravel / Symfony 等のフレームワークでは、リクエストをRequest オブジェクト経由で扱うのが原則
- スーパーグローバル変数を直接触ると、ミドルウェアや CSRF 等の保護が外れる可能性がある
- テストの際にもフレームワークのテストヘルパでリクエストを差し替える方が安全
関連
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Laravel キャッシュクリア完全ガイド(cache:clear / config:clear / 2026-05-18 07:42:07
- プロジェクトの作成と削除 2026-05-18 07:42:07
- インストール直後にNetbeansが反応しない 2026-05-18 07:42:07
- 動画やチャンネルの検索 2026-05-18 07:42:07
- APIキー取得方法 2026-05-18 07:42:07
- チャンネル情報の取得 2026-05-18 07:42:07
- API 入門 — Web API(REST / GraphQL / gRPC / 2026-05-18 07:42:07
- インストール(eclipseプラグイン) 2026-05-18 07:42:07
- Laravel「Dotenv values containing spaces must be surrounded 2026-05-18 07:42:07
- エラー一覧 2026-05-18 07:42:07
- curl: (51) SSL: certificate subject name '~' does not match 2026-05-18 07:42:07
- インストール方法(Windows版) 2026-05-18 07:42:07
- JSONから配列に変換 2026-05-18 07:42:07
- 処理を一定時間待つ 2026-05-18 07:42:07
- A non well formed numeric value encountered 2026-05-18 07:42:07
コメントを削除してもよろしいでしょうか?