用php清空文件

Chr*_*abe 11 php

可能重复:
PHP:是否有一个命令可以删除文件的内容而不打开它?

如何使用php命令清空服务器上的.txt文件?

Art*_*cto 48

这是一种只清空它的方法,如果它已经存在并且没有使用问题file_exists,因为该文件可能在file_exists呼叫和fopen呼叫之间不再存在.

$f = @fopen("filename.txt", "r+");
if ($f !== false) {
    ftruncate($f, 0);
    fclose($f);
}
Run Code Online (Sandbox Code Playgroud)

  • @col.fopen是少数几个需要"@"以获得无错误代码的地方之一,因为它在正常情况下会发出这样的通知(例如,获取远程文件失败).如果您遵循PHP开发,您就会知道这个主题已经讨论过了,并且提出了能够使PHP代码"@"免费(也就是说,我们都同意,一个desiratum)的措施(例如将其更改为`fsockopen) `,给出错误字符串)."如果发生任何错误"(这包括文件不存在或open_basedir限制),我会知道因为`$ f`将返回`false`,这是我测试的. (3认同)

rih*_*iha 19

$fh = fopen('filename.txt','w'); // Open and truncate the file
fclose($fh);
Run Code Online (Sandbox Code Playgroud)

或者在一行中并且不存储(临时)文件句柄:

fclose(fopen('filename.txt','w'));
Run Code Online (Sandbox Code Playgroud)

正如其他人所说,这会在不存在的情况下创建文件.

  • FCLOSE(的fopen( 'FILENAME.TXT', 'W')); (8认同)

Dan*_*man 16

写一个空字符串作为以下内容filename.txt:

file_put_contents('filename.txt', '');
Run Code Online (Sandbox Code Playgroud)