Вопрос по CURL

X
На сайте с 04.12.2018
Offline
151
266

Есть фрагмент кода:

$URL = "www.site.ru/stranica";
$refer = "yandex.ru";

@error_reporting(E_ALL);
@ini_set('error_reporting', E_ALL);
@header("Content-type: text/html; Windows-1251");
$ch = curl_init($URL);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729)');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 120);
curl_setopt($ch, CURLOPT_REFERER, $refer);
$page = curl_exec($ch);
curl_close($ch);

Выдает на экран содержимое страницы.

Как сделать, чтобы не выдавала на экран, а записывало в переменную?

Нужно чтобы потом разобрать эту страницу и вытащить цену товара.

Раньше делал через file(), но сейчас поставщик чего то нашаманил и получить код удается только через CURL

Удобный съем позиций (http://allpositions.ru/redirect/58277)
Антон Лавеев
На сайте с 31.10.2005
Offline
408
#1

$page это и есть переменная с результатом работы курлы.

☠️☠️☠️
X
На сайте с 04.12.2018
Offline
151
#2

print $page; выводит цифру 1

И какая то функция отдает содержимое на экран. От этого можно избавиться?

Антон Лавеев
На сайте с 31.10.2005
Offline
408
#3

Xubart, в приведённом отрывке кода на экран ничего выводится не должно.

print $page вы зачем делаете? Чтобы посмотреть что в переменной нужно например

var_dump($page);

ДП
На сайте с 23.11.2009
Offline
190
#4

Нужно установить опцию курл CURLOPT_RETURNTRANSFER в true чтобы получаемые данные не выводились, а записывались в переменную.

curl_setopt($ch, CURLOPT_RETURNTRANSFER , true);
S
На сайте с 30.09.2016
Offline
459
#5

И отправка заголовка не нужна

@header("Content-type: text/html; Windows-1251");
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
X
На сайте с 04.12.2018
Offline
151
#6

Всем спасибо!

Работает!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий