2011-09-27 14 views
7

PHP exec() Actualmente estoy usando:alternativo a la función

exec("zcat $filename", $output) 

para descomprimir un archivo .Z tipo, pero por desgracia mi empresa de alojamiento ha desactivado esta función.

¿Hay una solución?

$pathtofile = "filename.lis.Z"; 
exec("zcat $pathtofile", $output); 
+2

utilizar un host diferente? –

+0

Desafortunadamente, zlib no entiende el formato 'compress '' .Z', por lo que PHP 'gzuncompress()' no funcionará. Si ya no puede usar 'exec', tendrá que adaptar sus fuentes de archivos. Use 'gzip' a partir de ahora. – mario

+0

Lamentablemente, los archivos que estoy buscando están en formato .Z. A menos que haya una forma automática de convertirlos a formato gzip, tengo que seguir con el formato .Z. ¿Conoces algún host que permita exec()? –

Respuesta

2
system($shell_command, $response_var); 

Así, en su caso:

system("zcat $filename", $output); 
+3

casi puedo apostar a que han bloqueado esto y passthru() también – elibyy

+0

estoy seguro de que ellos también lo hicieron jajaja, solo arrojando métodos alternativos – Atticus

+0

tienen el sistema deshabilitado() también –

6

hacer esto

echo ini_get("disable_functions"); 

para saber si usted es capaz de utilizar uno de los siguientes:

system(); exec(); passthru(); shell_exec();

pero si se trata de un alojamiento compartido todo lo anterior se bloquearon con seguridad y que tendrá que encontrar una alternativa

+0

show_source, system, shell_exec, passthru, exec, popen, proc_open, chmod, mkdir, chdir, allow_url_fopen, rmdir –

2

archivos .Z son LZW compression. Si no puede ejecutar comandos de shell en su host, puede usar una biblioteca LZW PHP. Éstos son dos:

+0

¡No funcionó para mí! –

+0

¿Recibió un error o algo que pueda ser depurado? – six8

Cuestiones relacionadas