PHP将图片从url复制到文件夹

时间:2019-06-11 08:53:02

标签: php

为什么我的图像没有从URL复制到本地? 我没有任何错误。我知道有很多类似的问题-但我不知道哪里出了问题。感觉就像我已经尝试了一切。

希望你们中的一个能够告诉我什么地方出了错。

$url = 'https://example.com/media/'.$fetch['img'].'?w=128&h=128';
$img = '/images/hoses/fittings/'.$fetch['img'];

copy($url, $img);
  • URL有效
  • Allow_url_fopen设置为true。
  • 存在本地文件夹,并且权限设置为755

我也尝试过使用cUrl,同样的问题。

$content = file_get_contents($url);
$fp = fopen($img, "w");
fwrite($fp, $content);
fclose($fp);

什么会导致此问题?不知道在哪里看:(

更新: @ 04FS发现了错误。如果是起始斜线。

工作代码:

$url = "https://example.com/media/".$fetch['img']."?w=128&h=128";
$img = "images/hoses/fittings/".$fetch['img'];

if(!copy($url, $img)) {
    print_r(error_get_last());
} else {
    echo "File copied from remote!";
}

1 个答案:

答案 0 :(得分:1)

  

$ img ='/ images / hoses / fittings /'.$ fetch ['img'];

由于前斜杠,

/images/hoses/fittings/将引用服务器文件系统根目录

如果要将其作为项目文件夹中的 relative 路径,则需要删除该前导斜线。