13,005
回編集
(→戻り値) |
(→可変長引数) |
||
212行目: | 212行目: | ||
Hello, Charlie! | Hello, Charlie! | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<br><br> | |||
== グローバル変数の使用 == | |||
PHPのスコープルールにおいて、グローバルスコープで定義された変数は、関数の内部からは自動的にはアクセスできない。<br> | |||
これはPHPの<u>変数スコープの分離</u>という特徴によるものである。<br> | |||
<br> | |||
関数内でグローバル変数を使用する場合は、以下に示すいずれかの方法を使用する必要がある。<br> | |||
* globalキーワードを使用する方法 | |||
<syntaxhighlight lang="php"> | |||
$hoge = 1; | |||
function func1() | |||
{ | |||
global $hoge; // グローバル変数を関数内で使用することを宣言 | |||
echo "$hoge"; | |||
} | |||
</syntaxhighlight> | |||
<br> | |||
* $GLOBALS`配列を使用する方法 | |||
<syntaxhighlight lang="php"> | |||
$hoge = 1; | |||
function func1() | |||
{ | |||
echo "$GLOBALS['hoge']"; | |||
} | |||
</syntaxhighlight> | |||
<br> | |||
<u>※注意</u><br> | |||
<u>グローバル変数の使用は避け、代わりに引数として値を渡すことが推奨される。</u><br> | |||
<u>これにより、関数の依存関係が明確になり、テストや保守が容易になる。</u><br> | |||
<u>ソースコードの予測可能性と再利用性も向上する。</u><br> | |||
<br><br> | <br><br> | ||