PHPで、関数の中にstatic就職子を使って宣言された変数があれば、
初期化は1回のみで、次回に値が持ち越されます。

「スタティック変数は、再帰関数を実現する1つの手段として使用される。再帰関数は、自分自身をコールする関数。」