eyecatch php

PHP UNIX

【PHP】PHPからuizipコマンドを実行してzipファイルをサーバ上で展開する方法

2018/05/19

CMSのライブラリなど、結構な量のファイルをアップロードする場合などはどうやってアップロードしているでしょうか? 普通はディレクトリ(フォルダ)ごとアップロードするなどの手段を思いつきますが非常に時間がかかる上、必ずどこかで失敗するので私は好きではありません。

VPSや一棟借りサーバですと、puttyなどのSSHターミナルで接続できるので、UNIXのunzipコマンドを実行できるのですが、レンタルサーバではターミナル類が禁止されているところもあります。

そこでzip圧縮済みのファイルをアップロードし、PHPでunzipコマンドを実行してしまおうというのが今回の内容です。

PHPでunzipコマンドを実行する

2種類、ファイルを用意します。

ひとつは、アップロードするモノを圧縮したzipファイル。今回は hoge.zip とします。
もうひとつが展開用のPHPファイル。今回はわかりやすく unzip.php とします。

このふたつをアップロードします。

実行用PHPファイル(unzip.php)

このファイルをアップロードし、ブラウザからアクセスするだけ。
わずか3行のスクリプトですが、効果は絶大。FTPの時間を圧倒的に短縮できます。

展開後に元のzipファイル(hoge.zip)と、unzip.phpを削除するのを忘れずに。

-PHP, UNIX
-, , , ,