1

我想使用 PHP 在输入的文本位置写入文本文件。我尝试使用 fseek 将 wite 位置指向输入的数字,但它保存为空文件。

<?php
$testData = "testdata";
$testPosition = 3;
$fileReference = fopen("test.txt", "w");
fseek($fileReference, $testPosition);
fwrite($fileReference, $testData);
fclose($fileReference);
?>

如何让脚本正确写入指定位置的文本文件?

4

2 回答 2

1

w 标志只允许写入文件。尝试用标志替换 wr+标志。这将允许在不截断文件的情况下读取/写入文件。需要读/写才能让您搜索插入符号并写入它所在的位置。有关 fopen 函数的更多信息,请参阅php.net:fopen()

于 2013-08-16T17:31:06.250 回答
0

w标志具有以下功能:

'w' 只为书写而打开;将文件指针放在文件的开头并将文件截断为零长度。如果该文件不存在,请尝试创建它。

这可能就是你得到一个空文件的原因。

但是,在我的本地服务器上,这工作正常。这让我觉得您的权限可能不正确。例如,您可能没有写入权限。尝试并确保您对此文件具有正确的权限。

于 2013-08-16T17:13:12.253 回答