如何实现该功能 system() 不显示信息输出


How to achieve that function system() not display the information output

我正在使用

@system('zip -P password archive.zip workbook.xls');

要生成使用密码保护的zip存档,之后我想将用户重定向到另一个页面。我不能这样做,因为它显示的输出如下:"添加:工作簿.xls(放气 91%)"而且我收到错误"标题已发送"。

如何使此功能不显示该输出?

@符号仅用于抑制错误,程序发送错误消息的"通道"与正常输出的"通道"不同。(stderrstdout)。

还有其他函数与system相同但不输出stdout

shell_exec();

http://php.net/system -

exec() - Execute an external program
passthru() - Execute an external program and display raw output
popen() - Opens process file pointer
escapeshellcmd() - Escape shell metacharacters
pcntl_exec() - Executes specified program in current process space
backtick operator

如果你想创建一个zip文件,已经有一个Zip模块可以帮助你。请参阅此处以获取更多详细信息和示例。