[PHP-users 20827]ファイルの操作について

kohara skohara @ fb3.so-net.ne.jp
2004年 3月 19日 (金) 21:46:34 JST


小原と申します。

RedHatLinux+Apache1.3.28+ PHP4.3.1で利用しています。
最近PHPのプログラムをはじめたのですが、テキストファイルへの書込みの際
配列をまとめて書き込むようなことはできないのでしょうか?途中の一行のみ
を変更したい場合とか非常に不便な気がします。

例えば

$fp = fopen($file,"r+");

fwrite($fp,"test1");
fwrite($fp,"test2");

fclose($fp);

これだとダイレクトに都度書込みをしているようですので、途中で処理が中断さ
れた場合にちょっと怖い気がしまして。"w+"や"w"モードで開くと、最初に実デー
タが全て消去されるというのにもびっくりしました。


Perlだと配列にデータを作成して一度の書込み処理で以下のようにできます。

open(FILE,$file);

push(@new,"test1"); # 配列へセット
push(@new,"test1"); # 配列へセット

print FILE @new;
close(FILE);

何かよい方法がありましたらお願い致します。





PHP-users メーリングリストの案内