• ベストアンサー

このスクリプトのエラー原因は何でしょうか

2chビューワーを作っている初心者です。 レスを表示する所がどう改善しても表示されません。 現在のスクリプトを書きます。 for( $i = 0, $n = 1; $n == $b; $i++, $n++ ){ echo "<dt>".$n." :<font color=green><b>".$name[$i]."</b></font>:".$date[$i]."<dd>".$in[$i]."<br><br>\n"; } nameは名前欄の配列、dateは時間、IDの配列、inは内容、$bはレス数です。 どうか教えていただけないでしょうか。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

forでもいいですがforeachの方がわかりやすいかも <?PHP $name=array("name1","name2","name3","name4"); $date=array("date1","date2","date3","date4"); $in=array("in1","in2","in3","in4"); //forの例 $b=count($name); for( $i = 0, $n = 1; $n <= $b; $i++, $n++ ){ echo "<dt>".$n." :<font color=green><b>".$name[$i]."</b></font>:".$date[$i]."<dd>".$in[$i]."<br><br>\n"; } print "<hr>"; //foreachの例 $n=1; foreach( $name as $key=>$val){ echo "<dt>".$n++." :<font color=green><b>".$val."</b></font>:".$date[$key]."<dd>".$in[$key]."<br><br>\n"; }

S-DUCK
質問者

お礼

Foreachでも可能••• keyを使うことを思いつきませんでした! 勉強になりました。

その他の回答 (2)

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.2

RTFM. http://www.php.net/manual/ja/control-structures.for.php ----- 引用ここから 最初の式(式1)は、ループ開始時に無条件に 評価(実行)されます。 各繰り返しの開始時に、式2が評価されます。 その式の値がTRUEが場合、ループは継続され、括弧 内の文が実行されます。値がFALSEの場合、ループの 実行は終了します。 各繰り返しの後、式3が評価(実行)されます。 ----- 引用ここまで 最初のチェック時に式2($n == $b)はfalseですよね(汗

S-DUCK
質問者

お礼

第二引数の条件が満たされた時に処理が終了すると間違って覚えてました・・・ ご回答ありがとうございます!

回答No.1

for( $i = 0, $n = 1; $n == $b; $i++, $n++ ){ ↓ for( $i = 0, $n = 1; $n <= $b; $i++, $n++ ){ じゃないの?

S-DUCK
質問者

お礼

成る程・・・for文自体をよくわかって居なかったようです。 回答ありがとうございした!

関連するQ&A