Laravel 5.7 php getimageinfo 'не удалось открыть поток: нет такого файла или каталога' - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь получить размеры файла изображения, который успешно загружается в мою папку public / images, которая правильно вставлена ​​через Laravel в папку storage / public.Я использую функцию PHP getimageinfo.

Для хранения файла я использовал встроенный ->store('pathtodirectory', 'public'), чтобы сохранить файл на работающем сервере.Он правильно возвращает путь / имя файла, связанный с изображением, и правильно сохраняет файл, который я могу подтвердить и просмотреть.

Однако!Когда я пытаюсь использовать функцию getimageinfo, она говорит мне «не удалось открыть поток: нет такого файла или каталога».Я попытался использовать функции Storage::url и storage_path, чтобы получить путь к файлу и передать его в getimageinfo.Я также попытался использовать функцию Laravel asset.Ничего не работает.

Что мне не хватает?

Код:

    $photo = $request->file('image');
    $imageFilePath = $photo->store('images', 'public');
    $imageDimensions = getImageSize(Storage::url($imageFilePath));<--Fails here

My config / filesystems.php:

'disks' => [

    'local' => [
        'driver' => 'local',
        'root' => storage_path('app'),
    ],

    'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('APP_URL').'/storage',
        'visibility' => 'public',
    ],

    's3' => [
        'driver' => 's3',
        'key' => env('AWS_ACCESS_KEY_ID'),
        'secret' => env('AWS_SECRET_ACCESS_KEY'),
        'region' => env('AWS_DEFAULT_REGION'),
        'bucket' => env('AWS_BUCKET'),
        'url' => env('AWS_URL'),
    ],

],

1 Ответ

0 голосов
/ 01 мая 2019

Хорошо.Сначала о проблемах ... Документация Laravel - это мусор, когда вам нужно что-то кроме введения (то есть создания приложения).Это не должно было занять два дня, чтобы найти этот ответ.Что:

getImageSize(Storage::disk('public')->path($imageFilePath));

Я бы хотел, чтобы Laravel раскрыл в своей документации вызываемые методы, доступные для ресурса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...