1

PHPを使用して、システム内のURLからフォルダーにファイルをコピーしようとしています

<?php $image = "http://l.yimg.com/t/frontpage/10-facts-slideshow-080512-630-01.jpg";
if (!copy($image, "localfolder/mainPic1.png")) {
echo "FAILED";
}else{echo "DONE";}

いつも「失敗」で終わる

  • すべての権限は localfolder に設定されます

  • 私はphpinfoをチェックし、それを見つけました allow_url_fopen =Off

これは共有サーバーであるため、php 設定を制御することはできません。代替案を提案してください。

ありがとう、ジェイ

4

2 に答える 2

1

allow_url_fopenがオフで有効にできない場合は、curl を使用してファイルを取得し、ローカルに保存する必要があります。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://l.yimg.com/t/frontpage/10-facts-slideshow-080512-630-01.jpg");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$imgdata = curl_exec($ch);

// Save to disk
file_put_contents("localfolder/mainPic1.png", $imgdata);
于 2012-05-09T02:55:33.403 に答える
0

はい、allow_url_fopenこれを行う必要がありONます。

allow_url_fopen = On

php.ini共有サーバーでの変更が許可されている場合でも。を作成し、ルートフォルダphp.iniに値を保持します。allow_url_fopen = On通常、デフォルト設定を上書きします。

于 2012-05-09T03:05:28.173 に答える