php给写内容到文件的指定位置,用什么函数啊?

2024-12-17 14:57:35
推荐回答(2个)
回答1:

用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);

回答2:

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);