я работаю с "symfony/symfony": "~3.4",
а также "knplabs/gaufrette": "^0.3.0",
для загрузки медиафайлов в хранилище Google. Но как быть с epub
файлы, когда я добавляю epub
файл в теле post
запрос, у меня был файл без имени или пути
epubUrl = {Symfony\Component\HttpFoundation\File\UploadedFile} [7]
test = false
originalName = "RU EJTOP epub r1 (2).epub"mimeType = "application/octet-stream"size = 0
error = 1
*SplFileInfo*pathName = ""*SplFileInfo*fileName = ""
и ошибка действия
Warning: file_get_contents(): Filename cannot be empty
из функции загрузки, потому что file_get_contents
требуется какой-то путь
public function upload(
UploadedFile $file,
$target,
$allowedMimeTypesArray,
$name
) {
if (!$allowedMimeTypesArray) {
$allowedMimeTypesArray = self::$allowedMimeTypes;
}
// Check if the file's mime type is in the list of allowed mime types.
if (!in_array($file->getClientMimeType(), $allowedMimeTypesArray, true)) {
throw new \InvalidArgumentException(
sprintf(
'Files of type %s are not allowed.',
$file->getClientMimeType()
)
);
}
$y = file_get_contents($file->getPathname());
$this->storeFile($target, file_get_contents($file->getPathname()), $name);
return $name;
}
private function storeFile($target, $data, $name)
{
/** @var GoogleCloudStorage $fileSystem */
$fileSystem = $this->getFileSystem($target);
if (false === $fileSystem->write($name, $data)) {
throw new \Exception('Storing file failed');
}
}
Как загрузить EPUB-файл в хранилище Google, а затем прочитать его?
и как это работает с файлом epub в php?
Я нашел, php.ini
upload_max_filesize
после увеличения его — файл загружается с путем и именем и получает содержимое и пишет в хранилище Google. Потому что нужно следить за ошибками в классе UploadedFile
Других решений пока нет …