从远程服务器或 URL 复制文件
我有以下代码:
$file = 'http://3.bp.blogspot.com/-AGI4aY2SFaE/Tg8yoG3ijTI/AAAAAAAAA5k/nJB-mDhc8Ds/s400/rizal001.jpg';
$newfile = '/img/submitted/yoyo.jpg';
if ( copy($file, $newfile) ) {
echo "Copy success!";
}else{
echo "Copy failed.";
}
它总是输出复制失败"
copy(/img/submitted/yoyo.jpg) [function.copy]: failed to open stream: No such file or directory
我的目录设置为 777.
my directory is set to 777.
有什么想法吗?谢谢!
推荐答案
虽然 copy()
将接受一个 URL 作为 source 参数,它可能对 destination 的 url 有问题.
While copy()
will accept a URL as the source argument, it may be having issues a url for the destination.
您是否尝试过指定输出文件的完整文件系统路径?我假设您没有尝试将新文件放到远程服务器上.
Have you tried specifying the full filesystem path to the output file? I'm assuming you're not trying to put the new file onto a remote server.
例如:
$file = 'http://3.bp.blogspot.com/-AGI4aY2SFaE/Tg8yoG3ijTI/AAAAAAAAA5k/nJB-mDhc8Ds/s400/rizal001.jpg';
$newfile = $_SERVER['DOCUMENT_ROOT'] . '/img/submitted/yoyo.jpg';
if ( copy($file, $newfile) ) {
echo "Copy success!";
}else{
echo "Copy failed.";
}
以上方法对我来说效果很好.
The above worked nicely for me.
相关文章