URL к изображению с помощью Symfony 3.4 - PullRequest
0 голосов
/ 24 сентября 2018

Я пытаюсь загрузить изображение с URL.Я хочу поместить его в базу данных и сохранить путь.

Я сделал это для изображений, загруженных пользователем, но не загруженных с URL-адреса.

Весь мой код приведен ниже:

Контроллер ($array_photo - это массив с большим количеством URL-адресов):

    $file = file_get_contents($array_photos[0]);
    if ($file != NULL) {
        $fileName = md5(uniqid()) . '.' . $file->guessExtension();

        $file->move(
            $this->getParameter('image_directory'), $fileName
        );
    }


var_dump($array_photos[0]) -> string(23) "http://photos..."

, а image_directory - это каталог в сети.

Когда я делаю это с формой (я использую $file = $form->get('avatarPath')->getData(); вместо $file = file_get_contents($array_photos[0]);, которая работает, но я получаю эту ошибку:

Вызов функции-члена guessExtension () дляstring

Если я заменил guessExtension на '.png', я получу эту ошибку:

Вызов функции-члена move () для строки

1 Ответ

0 голосов
/ 24 сентября 2018

Файл действительно является строкой:

$file = file_get_contents($array_photos[0]); // returns string of image data

Вам нужно просто использовать file_put_contents(): -)

http://php.net/manual/en/function.file-put-contents.php

file_put_contents($file, '/path/to/save');

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