Зачем мы используем CURLOPT_WRITEFUNCTION в cURL PHP?

Не могли бы вы описать это на примерах, пожалуйста?

Я знаю, что это старый вопрос, но, может быть, мой ответ поможет вам или кому-то другому. WRITEFUNCTION полезен для обработки текста, когда он идет по потоку или для прерывания загрузки, основываясь на некоторых условиях. Вот пример, который просто помещает весь текст в прописные буквы:

function get_html($url){ $ch = curl_init(); $obj = $this;//create an object variable to access class functions and variables $this->result = ''; $callback = function ($ch, $str) use ($obj) { $obj->result .= strtoupper($str); return strlen($str);//return the exact length }; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_WRITEFUNCTION, $callback); curl_exec($ch); curl_close($ch); return $this->result; } 

Чтобы узнать, как я его использовал, ознакомьтесь с этой ссылкой: Параллельный запрос cURL с обратным вызовом WRITEFUNCTION .

Посмотри на

CALLBACK OPTIONS для определения и

Пример callbacks.php

Он используется с функцией curl_setopt .

CURLOPT_WRITEFUNCTION – это имя функции обратного вызова, в которой функция обратного вызова принимает два параметра. Первый – ресурс cURL, а второй – строка с данными, которые должны быть записаны. Данные должны быть записаны с использованием этой функции обратного вызова. Должно возвращать точное количество записанных байтов, иначе это не удастся.