How to validate image url in php with multi_curl?

Viewed 26

Hello guys I am checking the url if it has a image or not by using multi curl. But here's the issue. What if the $testArray array has like 2000 links and I do not want to make 2000 curl request at a time, so I would like to do curl request of 50 at a time. How can I accomplish this? Please let me know any confusing with code. Thanks a lot.

function checkImageIfExist ($imageLink) {
    $imageLinkArray = array();
    $curl_arr = array();
    $mh = curl_multi_init();

    foreach ($imageLink as $key => $value) {
        $curl_arr[$key] = curl_init();
        curl_setopt($curl_arr[$key], CURLOPT_URL, $value);
        curl_setopt($curl_arr[$key], CURLOPT_RETURNTRANSFER, true);
        curl_multi_add_handle($mh, $curl_arr[$key]);
        do {
            curl_multi_exec($mh, $running);
        } while($running > 0);
        
        $httpcode = curl_getinfo($curl_arr[$key], CURLINFO_HTTP_CODE);
        if ($httpcode == 200)
            $imageLinkArray[] = $value;
        else 
            '';
    }
    print_r($imageLinkArray);
    curl_multi_close($mh);
}

This is how I call the function.

checkImageIfExist($testArray);
0 Answers
Related