Я так сказать новичек и до ООП еще не дорос. Мне непонятен один момент с многопоточным парсером rolling-curl а именно этот кусок.
// эта функция парсит html
function request_callback($response, $info) {
if (preg_match("~<title>(.*?)</title>~i", $response, $out)) {
$title = $out[1];
}
echo "<b>$title</b><br />";
print_r($info);
echo "<hr>";
}
// подключили класс
require("RollingCurl.php");
// урлы которые будем парсить
$urls = array("http://www.google.com",
"http://www.facebook.com",
"http://www.yahoo.com",
"http://www.youtube.com",
"http://www.google.cn",
"http://www.sina.com.cn",
"http://www.wordpress.com",
"http://www.google.co.uk");
// самое непонятное
$rc = new RollingCurl("request_callback");
$rc->window_size = 20;
foreach ($urls as $url) {
$request = new Request($url);
$rc->add($request);
}
$rc->execute();
// тут очень нужно получить массив со спарсенными данными
// но КАК?
Функция request_callback отлично выводит результат прямо в браузер.
А мне нужно в массив.
я переписал функцию вот так:
function request_callback($response, $info) {
if (preg_match("~<title>(.*?)</title>~i", $response, $out)) {
$title = $out[1];
}
$out['title'] = $title;
$out['blablabla'] = $blablabla;
return $out;
}
Но так как я не очень понимаю ООП я незнаю как мне получить массив который возвращает функция request_callback.
Заранее спасибо.