curl响应在php中未显示任何使用


curl response showing nothing using within php

我正在尝试使用curl从url获取数据。我为此做了一个递归函数。我成功地获得了数据,但我面临的问题是,当curl调用没有找到结果时,页面什么都不显示,只显示一个空白页面。。没有任何错误。我也使用了var_dump()来测试响应。但什么也没找到。

这是我的递归函数

function recursive_get_scrap($offset, $page_size, $urls, $original_array){
    ini_set('max_execution_time', 1800);
    $of_set = $offset;
    $pg_size = $page_size;
    $off_sets = 'offset='.$of_set.'&page_size='.$pg_size.'';
    $url = $urls.$off_sets;        
    $last_correct_array = $original_array;
    $ch1 = curl_init();
    // Disable SSL verification
    curl_setopt($ch1, CURLOPT_SSL_VERIFYPEER, false);
    // Will return the response, if false it print the response
    curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true);        
    curl_setopt($ch1, CURLOPT_HEADER, 0);
    curl_setopt($ch1, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch1, CURLOPT_URL,$url);
    // Execute
    $result2 =  curl_exec($ch1);
    $info   =   curl_getinfo($ch1);
    if(curl_errno($ch1))
        {
            echo 'error:' . curl_error($ch1);
            //return $last_correct_array;
        }

    // Closing    
    curl_close($ch1);

   if(!$result2 || strlen(trim($result2)) == 0 || $result2 == false){
        echo 'no array'; 
    }
    if(isset($result2) && !empty($result2)){
        echo 'in recursive function <br>';
        $a1 = json_decode( $original_array, true );
            $a2 = json_decode( $result2, true );                

                $temp_array = array_merge_recursive($a1, $a2 );                   
                $last_correct_array = $temp_array;
                $offset += 100;
                $page_size = 100;
                recursive_get_scrap($offset, $page_size, $urls, json_encode($last_correct_array));                                                 
    }

}

现在我只想知道,如果注意是针对curl调用,那么应该显示no array消息。

使用此选项来curl_setopt():

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

这将使curl_exec返回数据而不是输出数据

要查看它是否成功,您可以检查$result和

curl_error().