PHP调用Linux命令行执行文件压缩命令。

在过去的几天里,你需要把3个txt文件打包到…
At the beginning, like ordinary young people, I thought of using the PHP built-in ZipArchive, and the code would look like this:
复制代码代码如下所示:
*分成3个txt文件的wow_1.txt wow_2.txt和wow_3 .txt * /
zip =新美元之后();
要美元= '。 / /哇exl_file .zip;
如果($邮编->打开($ zipfile,之后::= = =真的创造)){
$邮编->增加文件('。 / / wow_1 exl_file .txt,'wow_1 .txt);
$邮编->增加文件('。 / / wow_2 exl_file .txt,'wow_2 .txt);
$邮编->增加文件('。 / / wow_3 exl_file .txt,'wow_3 .txt);
近点();
删除文件下载/输出文件后
其他{ }
zip生成失败!;
}

但纠结的是ZIP没有安装在正式环境中。之后不能直接使用。代码比顶部的扩展快。PHP调用Linux的命令行,执行压缩命令,OK,立即执行。
复制代码代码如下所示:
*分成3个txt文件在exl_file目录wow_1.txt wow_2.txt和wow_3.txt。
$输出=数组();
命令行命令用括号执行字符串;
第二个参数是在执行命令后Linux返回的结果数组;
Linux返回的每个结果依次存储在数组中。
第三个参数是结果,如果执行成功,Linux返回一个结果值为0,如果执行失败,结果不是0。
* /
exec(拉链。 / / exl_file哇。邮编。 / / wow_1 exl_file .txt。 / / wow_2 exl_file .txt。 / / exl_file wow_3 .txt
如果(RC)!= 0){
foreach(美元美元美元输出高= > VO){

}
其他{ }
要美元= '。 / /哇exl_file .zip;
删除文件下载/输出
}
}

你可以改变如果(RC)!= 0)如果(1=1)看到Linux执行命令返回的结果行,如下所示:
复制代码代码如下所示:
添加:exl_file / wow_1.txt(瘪96%)
添加:exl_file / wow_2.txt(瘪97%)
添加:exl_file / wow_3.txt(瘪97%)

您可以看到,从执行返回的所有信息都输入到$输出数组中,并成功生成* zip文件。