Что за непонятная ошибка curl?

210
16 апреля 2017, 02:49

пытаюсь в yii2 спарсить сайты партнеров на тему есть ли товар в наличии организовывал таким методом

public function haveParse($goods){
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $goods->url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        if(curl_exec($ch) === false)
        {
            $out= curl_error($ch);
        }else{
            $out=curl_exec($ch);
        }
        return $out;
    }

приходит следующее boolean true при этом

 `var_dump($goods->url)==string 'http://xn----7sblaeg7cgj4a.com.ua/ve6rhnjaja-odejda/3339-palto-frak.html'`

если вот здесь curl_setopt($ch, CURLOPT_URL, $goods->url); заменить на

curl_setopt($ch, CURLOPT_URL, 'http://xn----7sblaeg7cgj4a.com.ua/ve6rhnjaja-odejda/3339-palto-frak.html');

страница приходит полностью. Не подскажите в чем проблема.

Answer 1

Не может такого быть, что вы описываете. А может только то, что написано в доках:

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Однако, если установлена опция CURLOPT_RETURNTRANSFER, при успешном завершении будет возвращен результат, а при неудаче - FALSE.

Уверен, что вы просто чего-то недоговариваете.

пробовать надо так:

public function haveParse($goods){
    //$url = 'https://ru.stackoverflow.com/questions/';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $goods->url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    if(($out = curl_exec($ch)) === false)
        $out= curl_error($ch);
    return $out;
}
READ ALSO
Получить массив в переменную php

Получить массив в переменную php

ЗдравствуйтеЗадача следующая: В Базе есть ячейка с содержимым

251
PHP_сумма цифр числа

PHP_сумма цифр числа

Здравствуйте ! Может у кого-нибудь найдется время - разъяснить как работает этот код, а именно - что происходит в цикле "FOR"Если кто-нибудь разъяснит...

211
Поиск для сайт из базы данных

Поиск для сайт из базы данных

Я сделал поиск, что бы выдавало все статьи, содержащую введённую букву или слово

180
Программирование краевой задачи [требует правки]

Программирование краевой задачи [требует правки]

Как запрограммировать задачку на С++?

197