Я получаю ответ от стороннего вызова API. Они предоставили мне file_url в ответ. Если я нажал file_url в URL браузера, то получил zip-файл на локальной машине.
stdClass Object
(
[start_date] => 2018-06-01 08:00:00
[report_date] => 2018-07-02
[account_name] => Maneesh
[show_headers] => 1
[file_url] => https:examplefilename
[date_range] => 06/01/2018 - 07/03/2018
)
Как я могу скачать zip-файл в папке public / phoneList на сервере и разархивировать файл?
$fileUrl = $rvmDetails->file_url;
$zip = realpath('/phoneList/').'zipped.zip';
file_put_contents($zip, file_get_contents($fileUrl));
$zip = new \ZipArchive();
$res = $zip->open('zipped.zip');
if ($res === TRUE) {
$zip->extractTo('/phoneList/'); // phoneList is folder
$zip->close();
} else {
echo "Error opening the file $fileUrl";
}
Приведенный выше код работает. но проблема возникает при распаковке папки.
ZipArchive::extractTo(): Permission denied