我有一个大文件,需要删除最后512个字节。我不想复制文件。
感谢。
答案 0 :(得分:10)
您应该使用ftruncate(handle, file_size - 512)
(使用filesize
或fstat
功能获取文件大小)
答案 1 :(得分:3)
fstat
,ftruncate
,fopen
和fclose
的使用示例:
<?php
$bytesToTruncate = 5; // how many bytes we are going to delete from the end of the file
$handle = fopen('/home/francesco/mytest', 'r+'); // Open for reading and writing; place the file pointer at the beginning of the file.
$stat = fstat($handle);
$size = $stat['size'] - $bytesToTruncate;
$size = $size < 0 ? 0 : $size;
ftruncate($handle, $size);
fclose($handle);
答案 2 :(得分:2)
我没有用大文件测试它,但你可以尝试一下: