PHP exec()函数的替代函数

PHP exec()函数的替代函数,php,exec,zcat,Php,Exec,Zcat,目前我正在使用: exec("zcat $filename", $output) 解压缩.Z类型文件,但不幸的是,我的托管公司现在已禁用此功能 有解决办法吗 $pathtofile = "filename.lis.Z"; exec("zcat $pathtofile", $output); 因此,在你的情况下: system("zcat $filename", $output); 这样做 echo ini_get("disable_functions"); 要了解您是否能够使用以下选项之

目前我正在使用:

exec("zcat $filename", $output)
解压缩
.Z
类型文件,但不幸的是,我的托管公司现在已禁用此功能

有解决办法吗

$pathtofile = "filename.lis.Z";
exec("zcat $pathtofile", $output);
因此,在你的情况下:

system("zcat $filename", $output);
这样做

echo ini_get("disable_functions");
要了解您是否能够使用以下选项之一:

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

但是如果它是共享主机,以上所有内容都会被屏蔽,您必须找到一个替代的

.Z文件。如果不能在主机上运行shell命令,可以使用lzwphp库。这里有两个:


我几乎可以打赌他们阻止了这个和passthru(),我敢肯定他们也阻止了lol,只是扔掉了其他方法。他们已经禁用了系统()。好的,你需要给他们打电话,解释一下你的情况。如果他们不想为你重新配置任何东西,那么你需要切换主机。我试着打电话给他们,但没有帮助,因为他们不想重新配置。关于哪个主机允许使用exec()的任何建议?不幸的是,zlib本身不理解
compress
格式
.Z
,因此PHPs
gzuncompress()
无法工作。如果您不能再使用
exec
,则必须调整文件源。从现在开始使用
gzip
。不幸的是,我正在获取的文件是.Z格式的。除非有一种自动将它们转换为gzip格式的方法,否则我必须坚持使用.Z格式。你知道有哪台主机允许exec()?实际上,任何专业的主机都在使用suexec,而不是safemode解决方案。请注意,您的
zcat
是一个支持.Z的特殊版本;您可能需要重新安装该文件或使用
解压缩-c$filename
。还记得这里的
escapeshellarg()
。我没有使用escapeshellarg(),但是php.net帮助文件说“转义一个字符串以用作shell参数”,但问题是我认为为了使用它,我仍然需要system()或exec(),但我的宿主已经阻止了这两个。你知道有什么服务不让我做这样的噩梦吗?@mario如何使用suexec?我的托管公司告诉我他们已经安装了suexec,但我仍然不能使用exec()函数,所以我想知道它现在是如何工作的?显示源代码、系统、shell\u exec、passthru、exec、popen、proc\u open、chmod、mkdir、chdir、allow\u url\u fopen、rmdir
echo ini_get("disable_functions");