まずご質問の意図を整理させてください。
1)PASS付きZIP(中にはtsvファイルがある)をWeb上からダウンロードできる場所にアップロード
2)1のファイルを別の場所でダウンロード
3)ダウンロードしたファイルをプログラムで解凍して中身を取り出し、DBに登録
…ということでしょうか。
あとsetPasswordはPHP5.6以降しか対応してないようですので、サーバ環境によっては使えませんのでご注意を…。
ご回答ありがとうございます。2015/07/29 13:09追記です。
PHP
1$zip = new ZipArchive();
2 // 一時ファイルを作成
3 $filename = tempnam(sys_get_temp_dir(), 'example-prefix');
4 $zip_status = $zip->open($filename, ZipArchive::CREATE);
5
6 $zip->addFile('/(path)/data.tsv', 'data.tsv');
7 $zip->setPassword('password');
8 $zip->close();
9
10// ファイルをダウンロード可能な場所にアップロードする
11// 仮にZIPファイル名をtest.zipとします
12rename('/(現在保存されているパス)/test.zip', '/(アップロード先のパス)/test.zip');
これで1)については完了かと思います。
2)につきましては、ブラウザ上から手作業で落とせばよいのか、プログラム的にFTP接続なりで取りに行くのかで全く変わります。どちらになりますでしょうか。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/07/29 04:02
2015/07/29 04:51
2015/07/29 08:36
2015/07/29 13:05