今回の記事は完全な個人用メモです。
PHP学習における名著『気づけば プロ並み PHP改訂版』でPHPの勉強をしていましたが、途中でうまくいかなくなりました。
本著131ページの「pro_disp.php」で書いてある通りにプログラムを改造したら、最後の方で行数が1つ足りないという現象があり、そのままプログラムを実行してみたら案の定エラー。

ここで「参照」をクリックすると

こんなエラーが出る。
何をどうしても治らなくて、途方に暮れていました。
原因は単純だった
「行数が足りないということは、どこか1行記述漏れがあるはずだ」と1行1行書籍とにらめっこ。
もちろん、「pro_disp.php」の改変元である「staff_disp.php」や「staff_edit.php」も穴が空くほど調べてようやく原因が判明。
原因は至ってシンプル。

単に閉じカッコ「}」がないだけだった。
でもこの部分は結構多くの人が引っかかると思う。
普通に書籍通りにコード打ってるだけだとまず気が付かない。
最後らへんで行数が1つずれるので違和感を持つが、まさかこんなところに原因があるとは思わないだろう。
ただし、エラーの原因の可能性として、閉じタグの不足が考えられるということが分かって良かった。
これも著者の狙いだったらすごい。
まとめ
プログラムのエラーは閉じタグ不足を疑おう。
コメント