PHPによるステートパターン（Wikipediaを参照した） ref: http://qiita.com/yaoki_dokidoki/items/c50bd32053fdfcc34f86