dポイントプレゼントキャンペーン実施中!

PHP入門者です。

まだ自分でスクリプト開発はできませんが、
サンプルスクリプトを改造しながら自習中です。


デバッグエラー表示で、このような行番号が出てくれるのは
とても助かるんですが、

PHP Error Message
Warning: Invalid argument supplied for foreach() in /home/user/public_html/include.php on line 127

この場合127行目を探しても該当しそうな間違いが発見できなくて
悩んでいます。


どうも、少しずつ行番号表示が実際のスクリプトファイルとずれて
いることに薄々気づき始めました。


実際のスクリプトにはコメントとか色々入ってますから、
多分コメントは引き算した行数なのかな?とは思ってるんですが。
それでも間違えた心当たりの無い行に行き着いたりします。


デバッグが指示してくれる行番号とは、具体的にどの行を指摘して
くれていることになりますでしょうか?


こんなレベルの私ですが、どうかお助けください。

A 回答 (4件)

スクリプトの編集には何をお使いでしょうか?



おそらく編集しているソフトは自動折り返しも
行数としてカウントしており、その分でずれて
いるのだとおもいます。

この回答への補足

さっそくにおありがとうございます。

エディタは秀丸を使っています。

>おそらく編集しているソフトは自動折り返しも
>行数としてカウントしており、その分でずれて
>いるのだとおもいます。

うわ!よく見たらまったくその通りでした(汗)

秀丸を折り返しなしにする方法を探して見ます。

補足日時:2009/05/01 20:14
    • good
    • 0

>秀丸を折り返しなしにする方法を探して見ます。



秀丸でしたら
メニューの「その他」→「ファイルタイプ別の設定」で
「体制」の「詳細」の
「行番号の計算方法」を「エディタ的」に
変更すれば号番号を折り返しを無視して計算してくれます。

さらに折り返しを無しにしたい場合は
「体制」の「折り返し」を
「最大」にするか「固定」で「2000」に
設定すれば折り返しはほとんどなくなります

バージョンによって若干異なりますのでご注意下さい。
    • good
    • 0
この回答へのお礼

本当にありがとうございます。
おかげさまをもちまして、秀丸の設定がよくわかりました。

お礼日時:2009/05/03 01:54

}の閉じ忘れだと、コードの最後の行番号で表示されたりしますよ



表示している行番号に思い当たるミスが無ければ、手前のコードで
;や}の確認、そこにも無かったら、もっと前の}を確認って感じです

基本的にはエラーの示している行番号は信用してよいはずですが
閉じ忘れだとどこで閉じるべきかは判断出来ないので、最終行で
エラーを出すんじゃないかなーと思います
    • good
    • 0
この回答へのお礼

なるほど!
カッコの閉じ忘れミスがあると、行番号は狂ってしまうんですね。

これはかなり心当たりありそうなので、徹底的にローラー作戦で見直してみます。

本当にありがとうございます。

お礼日時:2009/05/01 20:39

まぁよくあるのは1行前に「;」をつけ忘れているとか・・・


とにかくその行に係ることですのでよく見ていればわかります
    • good
    • 0
この回答へのお礼

ご親切本当にありがとうございます。

基本的にPHPのデバッグが吐く行番号は、コメントとかも含めた
トータルの行番号なんですね。

必死でがんばってみます!

お礼日時:2009/05/01 20:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!