Это мой сценарий:
- Я загружаю zip-файл
- Проверьте каждый файл в zip-файле
- Если file! = Image, то переместите файл впункт назначения
- если файл == изображение, измените размер изображения и перейдите к пункту назначения
Я гуглил и видел разные решения, но нигде не удалось обработать файлы перед сохранением их в конечном месте назначения.
Это функция, которую я получил до сих пор:
// Extract zip file and return files in an array.
private function processZip() {
$zip = new ZipArchive;
$tmp_dir = FB_PLUGIN_DIR.'tmp/';
// Extract files to tmp dir
if ($zip->open($this->file['tmp_name']) === TRUE) {
//Check if temp dir exists. If not, create one.
if (!is_dir($tmp_dir)) {
mkdir($tmp_dir, 0700);
}
$zip->extractTo($tmp_dir);
$zip->close();
/* Process extracted files */
foreach(glob($tmp_dir.'*.*') as $filename) {
// Somehow get MIME type here without using 'finfo' and 'mime_content_type'
// I haven't installed PEAR and 'mime_content_type' is decapricated.
}
return '1'; // success
} else {
return "0"; // fail
}
}
Я не уверен, что я иду в правильном направлении.Каким-то образом я думаю, что я должен быть в состоянии обрабатывать файлы, находясь в «цикле ZIP».
Есть ли способ, которым я могу прочитать файлы в ZIP-файле, определить тип MIME и затем обработать файл?
Я нашел этот пример: http://www.java -samples.com/showtutorial.php?tutorialid=985
Я думаю, что это близко к тому, что мне нужно.Но не уверен, что изменить.