Duplicar posible:
PHP: Is there a command that can delete the contents of a file without opening it?Vaciado un archivo con php
¿Cómo vaciar un archivo .txt en un servidor con un comando php?
Duplicar posible:
PHP: Is there a command that can delete the contents of a file without opening it?Vaciado un archivo con php
¿Cómo vaciar un archivo .txt en un servidor con un comando php?
He aquí una forma de única vaciado si ya existe y que no tiene el problema de usar file_exists
, como el archivo puede dejar de existe entre la llamada file_exists
y la llamada fopen
.
$f = @fopen("filename.txt", "r+");
if ($f !== false) {
ftruncate($f, 0);
fclose($f);
}
Primero elimínelo usando unlink()
y luego simplemente cree un nuevo archivo vacío con el mismo nombre.
$fh = fopen('filename.txt','w'); // Open and truncate the file
fclose($fh);
O en una sola línea y sin almacenar el identificador de archivo (temporal):
fclose(fopen('filename.txt','w'));
Como otros han dicho, esto crea el archivo en caso de que no existe.
fclose (fopen ('filename.txt', 'w')); – ekerner
Escribir una cadena vacía como el contenido de filename.txt
:
file_put_contents('filename.txt', '');
Como se indica en php docs, esto es lo mismo que fopen, fwrite y fclose. Como no se requiere fwrite, esto podría ser un poco más lento que solo fopen/fclose. – riha
Es bueno saber, he votado su respuesta –
Sólo abrirlo para escribir:
if (file_exists($path)) { // Make sure we don't create the file
$fp = fopen($path, 'w'); // Sets the file size to zero bytes
fclose($fp);
}
Con ftruncate()
: http://php.net/ftruncate
Para 'ftruncate()' tienes que 'fopen()' primero. Si 'fopen()' para escribir, el archivo ya está truncado a cero bytes. –
@Ferdinand depende de cómo lo abra. – Artefacto
@Artefacto en general - sí. en este caso particular, ya está truncado. Tu comentario no tiene sentido y solo fastidia molesto. –
puede utilizar el siguiente código
`
$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "";
fwrite($fh, $stringData);
fclose($fh);
` Simplemente anulará el contenido de su archivo en blanco
'unlink ($ file); $ fp = fopen ($ file, 'W'); fclose ($ fp); ' –
¿no tienes ningún método fuera de tu cabeza? –
@Shakti ¿por qué desvincular? –