2011-07-15 14 views
0

私はこのコードcurl_execは直接データを出力していますか?

<?php 
function get(){ 
     $ch = curl_init(); 

     curl_setopt($ch, CURLOPT_URL, "http://stackoverflow.com/"); 
     curl_setopt($ch, CURLOPT_HEADER, 0); 
     $c = curl_exec($ch); 
     curl_close($ch); 
     die("A"); 
     return $c; 
} 

$first = get(); 


?> 

but look what's outputを持っています!これは、curl_exec()から返されたすべてを出力します。

どのように可能ですか?

+0

@downvoter:少なくとも、この質問に間違っていると言えますか? – genesis

+0

質問はとてもシンプルで、痛いと思う人もいます。答えを見てください。 – hakre

+2

ねえ、私はSOの質問でstackoverflowページを印刷しないことをお勧めしたいと思います。それはフィッシングのように感じて、pplに関係なくpplを混乱させます:) – babonk

答えて

2

はい(既にテスト済みです)。

curl_execPHP ManualあなたはCURLOPT_RETURNTRANSFER定数as documentedを利用することがない限り、ブラウザに直接出力を返しません。

+0

意味がありません。成功した場合はTRUE、失敗した場合はFALSEが返されますが、成功した場合は結果が出力されず失敗した場合はFALSEが返されます。ありがとう – genesis

+0

@genesis:それは理にかなっています。 returntransferをオンにすると、curl_exec *は、直接出力するのではなく、取り出したデータを返します。 –

+0

@genesis:あなたはそれを見落としたようです:1.)**成功した場合はTRUE、失敗した場合はFALSEを返します。ただし、CURLOPT_RETURNTRANSFERオプションが設定されている場合は、成功した場合は結果を返し、失敗した場合はFALSEを返します。** - ** Return Values **の下に提供されているテキスト全体を読んでください。そして、その隣には、次のようなコード例があります。そのページには、「curl_exec」行の隣にコメントがあります。** grab URLとブラウザに渡します**。次のヒントは例を読むことです。 – hakre

関連する問題