AAA Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Обработка при процессе чтения данных с сайта на PHP Curl

Данный пример показывает, как назначить свой обработчик длительного чтения даннх из интернета и обрабатывать их по мере поступленния. Это часть класса, используемого для работы с сетью.

// устанавливаем свой обработчик чтения
curl_setopt($this->curl_handle, CURLOPT_WRITEFUNCTION, array($this, "receiveResponse"));

// обработчик приема данных в процессе чтения
private function receiveResponse($curlHandle,$xmldata)
    {
        $this->responseString = $xmldata;
        $this->responseXML .=  $this->responseString;
        $this->length = strlen($xmldata);
        $this->size += $this->length;
        return $this->length;
    }

Данный пример показывает, как назначить свой обработчик длительного чтения даннх из интернета и обрабатывать их по мере поступленния. Это часть класса, используемого для работы с сетью.

function callback($download_size, $downloaded, $upload_size, $uploaded)
{
// Здесь мы может показывать процесс работы или выполнять дургую полезную работу
}

$ch = curl_init('http://example.com');

curl_setopt($ch, CURLOPT_NOPROGRESS, false);

// Установка обработчика
curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, 'callback');

// Размер буфера определяет как часто будет вызываться обработчик
curl_setopt($ch, CURLOPT_BUFFERSIZE, 128);

$data = curl_exec($ch);

.

© Copyright 2008-2020 by KDG



Rambler's Top100