php對檔案的操作(修改/刪除)
來源:互聯網
上載者:User
做看右看好象忘了寫這個了,呵呵順便再寫一下
不少朋友用dat檔案儲存體小容量資料,構建文本資料表使用,很多和我一樣屬於小鳥級的朋友雖然對如何追加,刪除檔案,清空檔案都非常熟悉,但對於對檔案內的某一條記錄操作去無奈了,最近寫了一個小留言本,把這個功能實現,這樣就給大家說一下了。
例:
data.dat
_________________________________________________________
[1] name∷sex∷phone∷address∷email∷
_________________________________________________________
此檔案為儲存資料的檔案
[1] ------------- 代表記錄資料
∷ ------------- 代表資料表的分割符號,可以為非\r,\n的字元
讀取頁面read.php
(內容略)
將data.dat內的資料編排顯示。如下
1、你多大拉 --- 發表人(sports98) 2002-13-42 □(checkbox)
2、你多大拉 --- 發表人(sports98) 2002-13-42 □(checkbox)
3、你多大拉 --- 發表人(sports98) 2002-13-42 □(checkbox)
4、你多大拉 --- 發表人(sports98) 2002-13-42 □(checkbox)
通過form將checkbox資訊傳到
do.php
do.php內容如下:
$filename="data.dat";//資料檔案
$fp=file($filename);//將資料檔案讀入
$number=count($fp);//計算總資料量
for($int_a=0;$int_a<$number;$int_a++){
if($int_a==$checkbox[])//這裡可以是一個也可以是多個判斷,這裡是以刪除一個記錄為例
continue;
else
$newmem.=$fp[$int_a]."\r"; //將檔案內容賦新值
}
$wfp=fopen($filename,"w");
fputs($wfp,$newmen);
fclose($wfp);
刪除的思想是,將文本內的資料讀入記憶體,在記憶體中操作完畢後再清空檔案寫,把符合刪除條件的記錄跳過就可以刪除了,
編輯就是把合格記錄替換了就可以拉~
$filename="data.dat";//資料檔案
$fp=file($filename);//將資料檔案讀入
$number=count($fp);//計算總資料量
for($int_a=0;$int_a<$number;$int_a++){
if($int_a==$checkbox[])//這裡可以是一個也可以是多個判斷,這裡是以編輯一個記錄為例
$newmem.="";//這裡是修改後的內容
else
$newmem.=$fp[$int_a]."\r"; //將檔案內容賦新值
}
$wfp=fopen($filename,"w");
fputs($wfp,$newmen);
fclose($wfp);