ユーザー定義関数が登場したところで、変数の 有効範囲(スコープ)というものを意識する必要があります。
(独習PHPより抜粋)
■変数の有効範囲(スコープ)
・scope.php
<?php
$x=1;
function sample(){
$x++;
return $x;
}
print(sample());
?>
実行結果
1
1?
2ではなく1ですね。
最初の$xはグローバル変数(関数外の変数)で次の$xはローカル変数(関数内の変数)で
2つは全く別物のようです。
つまりユーザ定義関数内の[$x++;]は、変数の暗黙的な初期値である0に1を加算しているので、
結果として1が返されるとい訳です。
(独習PHPより抜粋)
・・・・・だってさ。