2016-04-28 5 views
0

バージョン1:だからここに私のコードの新バージョンである、は、今私はfile_get_contentsにプロトコルのないパスを記述する必要があります。file_get_contents()がプロトコルなしで動作しないのはなぜですか?

file_put_contents("../img/avatar/".$id.".jpg", file_get_contents("http://localhost/folder/script.php?id=$id")); 

バージョン2: は、私は同様に動作し、このコードを持っています。しかし、うまくいかない:

$_GET['id'] = $id; 
file_put_contents("../img/avatar/".$id.".jpg", file_get_contents("../folder/script.php")); 

バージョン2の何が問題なのですか?


注:script.phpはアバターを作ります。そしてバージョン1も同様にそのイメージを作成しますが、バージョン2は未知のイメージを作成します。

+1

'file_get_contents()'はPHPコードを解釈せず、ファイルを読み込むだけです。 'http://'を通してトンネリングされたときに動作する理由は、httpサーバがそれを解釈して結果を返すためです。 – Havenard

+0

http://php.net/manual/en/function.error-reporting.php –

+0

@ Fred-ii-エラーはありません。保存された写真は不明です。 – stack

答えて

2

script.phpは関数にラップされているため、ファイルを最初にインクルードしてからその関数を入力データとして使用します。

require_once(__DIR__ . '/../../out/script.php'); 
file_put_contents("../img/avatar/".$id.".jpg", MakeAvatar($id)); 
関連する問題