php给写内容到文件的指定位置,用什么函数啊?
读取文件,再写文件,想把得到的内容插到文件的一个指定位置,不知道怎么写?一楼说的,我之前是这么写的,$text=$_POST['illegal'];$file_name=...
读取文件,再写文件,想把得到的内容插到文件的一个指定位置,不知道怎么写?
一楼说的,我之前是这么写的,
$text=$_POST['illegal'];
$file_name="ill1.php";
$fp=fopen($file_name, 'a+');
if($fp)
{
fseek($fp,-38,SEEK_END);
fwrite($fp,"\n".$text) or die("不能写入");
fclose($fp);
}
但是还是把我要插入的内容放到文件的最后了!并没有把插入我我希望的是末尾的某一个地方
如果像一楼说的那我原来的文件都被清空了,我之前试过的! 展开
一楼说的,我之前是这么写的,
$text=$_POST['illegal'];
$file_name="ill1.php";
$fp=fopen($file_name, 'a+');
if($fp)
{
fseek($fp,-38,SEEK_END);
fwrite($fp,"\n".$text) or die("不能写入");
fclose($fp);
}
但是还是把我要插入的内容放到文件的最后了!并没有把插入我我希望的是末尾的某一个地方
如果像一楼说的那我原来的文件都被清空了,我之前试过的! 展开
2个回答
推荐于2017-09-11 · 知道合伙人软件行家
关注
展开全部
用fseek($fp, $int); // int 为想写的位置距离文件开头的位置
-------------
fseek 还有第三个参数,如果使用附加模试("a" 或 "a+"),任何写入文件数据都会被附加上去,而文件的位置将会被忽略。
------------
那就只能先读,然后再处理,再写了。
类似于:
$s = file_get_contents($file);
$pos = strlen($s) - 38;
$s = substr($s, 0, $pos).$_POST['illegal'].substr($s, $pos);
-------------
fseek 还有第三个参数,如果使用附加模试("a" 或 "a+"),任何写入文件数据都会被附加上去,而文件的位置将会被忽略。
------------
那就只能先读,然后再处理,再写了。
类似于:
$s = file_get_contents($file);
$pos = strlen($s) - 38;
$s = substr($s, 0, $pos).$_POST['illegal'].substr($s, $pos);
展开全部
fopen($filename, 'ab');
fseek($fp, $int); // int 为你想写的位置距离文件开头的位置
fwrite($fp, $content);
-------------
fseek 还有第三个参数 支持更多其他的用法,具体查看php手册
-------------
看了下手册,有这么一句:
Note: 如果使用附加模试("a" 或 "a+"),任何写入文件数据都会被附加上去,而文件的位置将会被忽略。
所以好像只能是在open的时候 用 w
------------
那就只能先读,然后再处理,再写了。
类似于:
$s = file_get_contents($file);
$pos = strlen($s) - 38;
$s = substr($s, 0, $pos).$_POST['illegal'].substr($s, $pos);
fseek($fp, $int); // int 为你想写的位置距离文件开头的位置
fwrite($fp, $content);
-------------
fseek 还有第三个参数 支持更多其他的用法,具体查看php手册
-------------
看了下手册,有这么一句:
Note: 如果使用附加模试("a" 或 "a+"),任何写入文件数据都会被附加上去,而文件的位置将会被忽略。
所以好像只能是在open的时候 用 w
------------
那就只能先读,然后再处理,再写了。
类似于:
$s = file_get_contents($file);
$pos = strlen($s) - 38;
$s = substr($s, 0, $pos).$_POST['illegal'].substr($s, $pos);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询