
244
12
章 デバッグ
エンジンからパースエラーを受け取ったら、まずパースエラーが示す行を調べてください。命令
文の最後にセミコロンがあることを確認するなどの基本的な事項を調べます。その行が大丈夫そう
に見えたら、プログラムの前後の数行を調べて実際のエラーを探してください。対になる区切りに
は特に注意を払いましょう。文字列を囲む単一引用符や二重引用符、関数呼び出しやテスト式の括
弧、配列要素の角括弧、コードブロックの中括弧などです。開き区切り記号(
(
、
[
、
{
など)の数が
閉じ区切り記号(
)
、
]
、
}
など)の数と一致するか数えます。
このような状況には、PHP 対応エディタがとても便利です。シンタックスハイライトや括弧の
対応付け機能があると、エディタが問題を知らせてくれるので探し回る必要がありません。例えば、
本書のデジタル版を読んでいる場合には、シンタックスハイライトと例 12-2のカラーコーディン
グで簡単にエラーを見つけられるよう
になるでしょう。
12.3
プログラムデータの検査
パースエラーを乗り越えても、ゴールに到達するにはまだやるべき作業があるでしょう。プログ
ラムは文法的に正しくても、論理的な欠陥がある場合があります。「タグボートは 6 頭のずるいバッ
ファローと一緒に怒りで真っ赤になりながらかみ砕いた」という文は文法的には正しくても意味を
なさないように、PHP エンジンでは問題が見つからなくても期待通りに機能しないプログラムを
書くことができます。
プログラムの期待通りに動作しない部分を見つけて修正することは、 ...