exec可以执行linux中的命令。
以压缩/var/www/test/untar/package目录为例,压缩至/var/www/test/tar/目录下的package.tar.gz为例
tar目录为www-data用户和组权限
linux命令为
sudo tar -zcvf /var/www/test/tar/package.tar.gz -C /var/www/test/untar/ package
则php中只需要运行
exec(sudo tar -zcvf /var/www/test/tar/package.tar.gz -C /var/www/test/untar/ package);
需要注意的是:
1、exec在linux下php中默认是禁用函数,找到disable_functions将以exec结尾的函数删除掉。
2、注意权限,默认PHP页面执行的用户和组为www-data,所以如果是执行目录话,www-data一定要有写的权限。