Неверный вывод данных из функции

Рейтинг: 0Ответов: 2Опубликовано: 11.02.2015

Собственно. Как я понимаю, скрипт должен вывести -_-, а он почему-то выводит данные, полученные в $get и -_- . В чём может быть проблема?

<?php
function send_req_get($url,$proxy){
try{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt($ch, CURLOPT_TIMEOUT, 2);
curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$ss=curl_exec($ch);
curl_close($ch);
return $ss;
}
catch(Exception $ex)
{
return "";
}
}
$get = send_req_get($auth_user,get_proxy());
exit('-_-');
?>

Ответы

▲ 2Принят

Используйте опцию cURL CURLOPT_RETURNTRANSFER, которая при значении TRUE позволяет выполнять возврат результата передачи в качестве строки из curl_exec() вместо прямого вывода в браузер.

http://php.net/manual/ru/function.curl-setopt.php

▲ 1

curl_exec выводит полученные данные в стандартный вывод (echo) , а возвращает по умолчанию не данные, а true или false в зависимости от успешности запроса. Чтобы curl_exec возвращаля полученные данные, а не писала их в стандартный вывод, нужно установить опцию CURLOPT_RETURNTRANSFER в true.

Документация