今更ながらPHPのスコープを学んだ話
Published in
2 min readMay 4, 2019
PHPでうまく行かないことがあったが、
どうもスコープの塩梅が良くないことがわかったので、記録する。
qiitaに良くまとまっていたから引用。
→ [PHP] スコープ
PHPにおいてスコープは3つあり。
すなわち、
・ローカルスコープ(関数内スコープ)
・グローバルスコープ
・スーパーグローバル
【ローカルスコープ(関数内スコープ)】
<?php
// ローカルスコープ(関数内スコープ)
function localScope() {
//
$hoge = ‘hoge’;
return $hoge;
}
// 関数呼び出し
localScope();
echo $hoge;
// >> PHP Notice: Undefined variable
【グローバルスコープ 】
<?php
function localScope() {
// ローカルスコープ
$hoge = ‘hoge’;
return $hoge;
}// グローバルスコープ
// クラスや関数やの外で定義している変数
$hoge = ‘hoge’;
【スーパーグローバル】
先頭に「$_」が付いている変数がこれに該当します。
- $_POST
- $_GET
- $_FILES
- etc.