Laravelで業務システム

Laravel関連の記事掲載してます

PHP一画面一変数失敗談

PHPは型宣言がなく代入するデータによって型が決まるある意味便利で、PHP使えない議論の火種になっているところかと思いますが、その昔、私がPHP始めた頃この変数にまつわるある恐ろしい試みを実施しました。

少しこのことを語りたいと思います。

フレームワークを利用しないPHP開発だと、複雑な画面になると、変数が多くなる傾向があり、特に最初のころはノウハウもなく、行き当たりばったり(型宣言の必要もないため)で、無駄に変数つかっていました。特に、変数の命名規約も設定してなかったのも悪かったとは思います。

そんな中、いまではなんでこんな考えにいたった恐怖でしかないですが、極力つかう変数を少なくすれば、ロジックもきれになるのではないかという考えがよぎり、実際これを行いました。

具体的に言えば、同じファイル内で使う、データベースや数字、文字列の変数を可能なかぎり同じ変数を使うというものです。

PHPは同じ変数つかっても代入する値で型を変更してくれるのでこれが可能なのです。

確かに、変数が少なくなり一見、ロジックがきれいになったような気にはなりましたが、それは一時の喜びにすぎませんでした。

まず、問題点として、ロジック修正するときに、何の変数なのかすぐにわからず、上から順を追って確認しないと、ミスリードしてしまうこと。次に、同じ変数を使いまわすことによって、意図しない挙動(変数の初期化がうまくいかずゴミが残る等)をするときがあったということです。

笑い話にもなりませんが、素でPHPを扱うなら特に型には気を付けましょうね。