>  기사  >  백엔드 개발  >  외부 링크를 가져오기 위해 CURL이 file_get_contents의 대안이 될 수 있습니까?

외부 링크를 가져오기 위해 CURL이 file_get_contents의 대안이 될 수 있습니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-17 21:34:30719검색

Can CURL Be an Alternative to file_get_contents for Fetching External Links?

CURL을 사용하여 외부 링크 가져오기(file_get_contents의 대안)

특정 페이지의 외부 링크를 가져오기 위해 일반적으로 file_get_contents 함수가 사용됩니다. . 그러나 사용 중인 서버가 이 기능을 지원하지 않는 경우 CURL이 실행 가능한 대안이 될 수 있습니다.

CURL을 구현하려면 다음 코드를 활용할 수 있습니다.

function file_get_contents_curl($url) {
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);

    $data = curl_exec($ch);
    curl_close($ch);

    return $data;
}

// Usage Example
echo file_get_contents_curl('http://google.com');

그러나 이 코드가 빈 페이지를 반환하는 경우 URL 리디렉션을 활성화해야 할 가능성이 높습니다. 이 문제를 해결하려면 다음과 같은 방식으로 코드를 수정하세요.

function file_get_contents_curl($url) {
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);       

    $data = curl_exec($ch);
    curl_close($ch);

    return $data;
}

위 내용은 외부 링크를 가져오기 위해 CURL이 file_get_contents의 대안이 될 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.