• ベストアンサー

変数からテキストファイルを保存

サイトのソースを自動で取得するプログラムを考えいます。 その際にどこのサイトから取得したソースなのかをファイル名で整理したいと考えていますが、変数から自動的にテキストファイルを作ることができません。 どなたかお力をお貸し頂ければ幸いです。 それでは宜しくお願いいたします。 cate.txt======= shopping auction sports ============= <?PHP $Data = file("cate.txt"); for($c=0; $c<sizeof($Data); $c++){ //ここがうまく動いてくれません。。。 $filename == "{$Data[$c]}"."."."txt"; for($i=0; $i<1; $i++){ $url = "http://{$Data[$c]}.yahoo.co.jp/page={$i}"; $lines = file($url); $fp = fopen("data.txt","a"); foreach($lines as $newdata){ fwrite($fp, $newdata); } fclose($fp); } } ?>

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

$filename を使っている処が見あたりませんが、 file で読み込んだものは、改行が取り除かれませんから $filename = rtrim($Data[$c]).".txt"; とかした方がいいと思います。 そういうことかな?

yun100
質問者

お礼

お忙しいところご返信を下さり本当にありがとうございます。 まさにファイル名にする際に改行が取れていなくて エラーが発生していました。 おかげさまで解決できました。本当にありがとうございました。

その他の回答 (2)

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

とりあえず真剣に読んでないのですが・・ $filename == "{$Data[$c]}"."."."txt"; の行は代入演算子は「=」でよいのでは? せっかく{}でくくってあるならすべてコーテーションの なかに入れてしまうほうが見やすいかと。 $filename = "{$Data[$c]}.txt";

yun100
質問者

お礼

お忙しいところご返信を下さり本当にありがとうございます。 ご指摘ありがとうございました。 確かにおっしゃる通りで、プログラムをより綺麗に書く努力をしていきたいと思います。 このたびはお答えいただきありがとうございました。

  • f_motion
  • ベストアンサー率53% (7/13)
回答No.1

こんな感じでしょうか、 <?php $data0 = 1; $data1 = 2; for ($a=0;$a<2;$a++){ echo ${data.$a}.".txt"; } ?> 結果 1.txt 2.txt

yun100
質問者

お礼

お忙しいところご返信を下さり本当にありがとうございます。 ご指摘ありがとうございました。 試しながら自分なりに問題点を考えてみたいと 思います。 この度はお答えいただきありがとうございました。

関連するQ&A

専門家に質問してみよう