首页 > 开发 > PHP > 正文

php对文件的操作(修改/删除)

2024-05-04 22:55:40
字体:
来源:转载
供稿:网友
做看右看好象忘了写这个了,呵呵顺便再写一下


不少朋友用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);
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表