• ベストアンサー

CSVからテーブルに書き出すときに条件をつけたい

こんにちは! CSVファイルをPHPとHTMLタグを使ってWEBブラウザで表示しようとしています。 CSVデータを読み込んで、テーブルを表示し線の色や太さを変えるところまではできたのですが、 セルに格納されるデータを判断して、セルの背景色を指定したり文字に色を指定したりすることは可能でしょうか? それともJSPでJAVAにしたほうが容易に実現できるでしょうか? 実際にどのようなロジックか教えていただけたら嬉しいです。 当方PHPに関しては初めて一週間もたっていないほどの超初心者です。JSPに関しては仕事で作ったりしているので多少のことはわかります。 それではよろしくお願いいたします!

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

  • ベストアンサー
回答No.2

スタイルシートと連携させれば簡単です。 style=”color:' .$color.' という具合にtdでもaタグでも好きなものにデータで判断した$colorを割り付ければいいでしょう。 もっとおしゃれにやるならhead内にcssを宣言して選択したいclassを作っておいて、実際のタグの時に<td class='.$class.'>と行った風にすれば、文字や背景その他を一気に切り替えられます。

mocmocc
質問者

お礼

お礼が遅れてしまい大変申し訳ありませんでした↓ なるほど、スタイルシートと併用するとデザインにもこだわれそうですね…。どうもありがとうございました!

その他の回答 (1)

  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 不可能可能というなら可能です。 が、データをどのように持っているか不明なので詳しく書けませんが、 JSPがおわかりになるのであれば想像つくと思います。 $line配列に1行分のCSVが入っているとしたら、色とか変更したい部分の 配列のデータを読み込んでif等で条件つければよいのでないでしょうか? print "<tr><td>"; if ( $line[0] == "0" ) { print "<span style=\"font-weight:bold;\">{$line[0]}</span>"; } else { print "<span style=\"color:#0000ff\">{$line[0]</span>"; } print "</td></tr>"; 例えば上の例ですと最初の要素が0であった場合は太文字にて0を表示しています。 それ以外の文字は通常の太さで青文字になっています。 わかっていらっしゃるとは思いますが、 JSPを使おうがPHPを使おうがPerlを使おうが、色を変えたりというのは 最終的にHTMLのお仕事なので何を使ったら簡単であるとかは無いと思います。 (ファイルを読んだりとかは差がありますが)

mocmocc
質問者

お礼

なるほど!そうゆう書き方があるんですね。(本当に初心者ですみません…) できるところまでやってみようと思います、どうもありがとうございました!

関連するQ&A