Php 从URL上传文件

Php 从URL上传文件,php,image,forms,file,upload,Php,Image,Forms,File,Upload,我一直在试图找出如何使用以下代码从URL上传文件,而不使用表单。在一个表单中,我可以输入一个URL,而不是计算机上的本地文件,然后它就会上传,所以我猜这是可能的: 示例位置: 试试这个例子: 还是这个 $url = 'http://example.com/image.php'; $img = '/my/folder/flower.gif'; file_put_contents($img, file_get_contents($url)); 在linux主机中,您可以尝试 exec("wget

我一直在试图找出如何使用以下代码从URL上传文件,而不使用表单。在一个表单中,我可以输入一个URL,而不是计算机上的本地文件,然后它就会上传,所以我猜这是可能的:

示例位置:

试试这个例子:

还是这个

$url = 'http://example.com/image.php';
$img = '/my/folder/flower.gif';
file_put_contents($img, file_get_contents($url));

在linux主机中,您可以尝试

exec("wget ".$_POST['url']);

听起来应该使用curl。将远程文件下载到服务器(也称为URL上载)与本地文件上载非常不同。在这里可以找到使用curl的一个很好的解决方案:运行exec是一个非常糟糕的主意,尤其是对于不可信的post数据。。互联网上的任何人都可以发布到该页面,并强制您的服务器下载并执行世界任何地方托管的恶意文件。。
$url = 'http://example.com/image.php';
$img = '/my/folder/flower.gif';
file_put_contents($img, file_get_contents($url));
exec("wget ".$_POST['url']);