2012-01-09 24 views
6

Normalmente estoy en contra de usar @ ya que puede causar muchos dolores de cabeza. Pero mira estos dos ejemplos:es @unlink una mala práctica?

a) 

if(file_exists('file')) 
    unlink('file'); 

.

b) 

@unlink('file'); 

.

Parece que b está causando menos búsquedas de disco, lo que es bueno para el rendimiento. Entonces mi pregunta es: ¿la opción b me causaría algún problema o tiene alguna desventaja en relación con a?

+4

¿Qué pasa si hay otra razón por la que el archivo no se pudo eliminar? – PeeHaa

Respuesta

4

Me gustaría ir por la primera.

¿Qué sucede si el archivo no se puede eliminar debido a otra razón que no sea simplemente el hecho de que el archivo no existe?

+0

pero, si me aseguro de que mi carpeta sea escribible al comienzo del script, ¿podría obtener un mejor rendimiento con la opción 'b'? Por ejemplo, en un caso en el que realmente necesito mejorar el rendimiento y estoy seguro de haber configurado correctamente mi entorno ... –

+0

¿No sería eso también una llamada al sistema de archivos? – PeeHaa

+0

pero una vez al principio contra posibles varias veces durante la ejecución del script ... –

Cuestiones relacionadas