Сжатие файла в Zip-файл с помощью PHP в Google App Engine

#php #google-app-engine #zip #compression #google-cloud-storage

#php #google-app-engine #zip #сжатие #google-облачное хранилище

Вопрос:

Я пытаюсь сжать текстовый файл в zip-файл, хранящийся в облачном хранилище Google.

Ниже я написал функцию, которая работает с локальными файлами, но не с файлами, хранящимися в облачной корзине.

Я подозреваю, что проблема заключается в ZipArchive классе, однако в примечаниях к выпуску 1.8.9 App Engine указано, что расширение zip теперь поддерживается.

 function CompressFile($inputFilePath, $ZipArchivePath, $fileNameinArchive)
{
  $zip = new ZipArchive();
  $zip->open($ZipArchivePath,  ZipArchive::CREATE);
  $zip->addFile($inputFilePath, $fileNameinArchive);    
  $zip->close();
}
  

Есть предложения?

Комментарии:

1. Что вы подразумеваете под «файлами, хранящимися в облачной корзине». Вы должны сжимать файлы, пока они являются локальными для php-скрипта.

2. Привет, Марселл. У меня есть файл, хранящийся в корзине, затем я указываю путь к файлу с помощью gs//…/file.txt . Я хочу сжать этот файл так, чтобы в итоге я получил zip-файл в том же каталоге, т.е gs//…/file.zip .

3. Я понимаю. Вам нужно проверить, как использовать ZipArchive с App Engine (я этого не знаю, извините). Где вы получили подсказку для использования gs//... (и не должно быть gs:// )? Вот где я бы начал искать.

4. Извините, я хотел написать gs://.

5. Какую ошибку вы получаете?