curl を使用して、データ ストリームの 1 つのチャンクだけを読み取ろうとしています。
理想的には、ストリームの最初の画像を取得して、それを jpg ファイルに書き込みたいと思います。
WRITEFUNCTION を使用してこれを実行しようとしており、ストリームの長さが 20000 を超える場合は -1 を返します。
function receiveResponse($ch,$string) {
$length = strlen($string);
if($length >= 20000) { return -1; }
return $length;
}
$ch = curl_init('http://<url>/videostream.cgi');
curl_setopt($ch, CURLOPT_USERPWD, '<user>:<password>');
curl_setopt($ch, CURLOPT_WRITEFUNCTION, "receiveResponse");
curl_setopt($ch, CURLOPT_FILE, $fh);
curl_exec($ch);
ただし、ストリームはファイルへの書き込みを続行するため、ファイルサイズがどんどん大きくなります。
私はひどく間違ったことをしていますか?
よろしく、