Laravel API通过URL下载图像

时间:2020-10-15 09:40:32

标签: mysql laravel api

我有一个使用Laravel的API项目,需要我下载并保存到公用文件夹和数据库中。

流量:

一个字段将通过API调用到达,即通过company_logo字段。它将以URL http://a.mktgcdn.com/p/Lr5Sfx0OllncmEPfQGX11ZqUZSmcUhbvc5a-u-FrMCU/1.0000/300x300.jpg的形式出现。我需要抓取图像并将其本地保存到每个列表的唯一文件夹中,并将其也保存到数据库中。

我还没有代码,因为我不知道在Laravel中该怎么做。

2 个答案:

答案 0 :(得分:1)

希望获得帮助,您需要定义$ url和$ filename变量

$data = file_get_contents( $url );
file_put_contents( public_path($filename), $data ); 

答案 1 :(得分:1)

您只需使用Intervention Image

您可以找到如何安装here

$path = 'http://a.mktgcdn.com/p/Lr5Sfx0OllncmEPfQGX11ZqUZSmcUhbvc5a-u-FrMCU/1.0000/300x300.jpg';
$filename = basename($path);
Image::make($path)->save(public_path('yourimagefolder/' . $filename));

这将保存图像。然后以下代码会将其保存到数据库

$image = new ModelName();
$image->imagename  =$filename;
$image->save();