Carregar dados de um site externo utilizando a biblioteca cURL
Quando desenvolvemos sites ou aplicações baseadas em tecnologias Web, provavelmente precisaremos estabelecer conexões com outros sites ou aplicações disponíveis na Web.
Geralmete é utilizada a função fopen() do PHP para tal finalidade, porem infelizmente, muitos programadores deixam enormes brechas de segurança ao utilizar esta função, e seus sites são alvos constantes de muitos ataques, e assim sendo a proprio criador do PHP vem recomendando que bloqueie a fopen de ter acesso a abertura de sites externos.
O fopen(), não pode mais abrir sites exterenos. Para contornar esta limitação, é recomendado utilizar a biblioteca cURL para fazer este acesso externo, em poucas linhas podemos trocar o fopen() pela cURL.
cURL é uma biblioteca que permite a conexão e troca de informações com servidores remotos de uma forma simples. Com o cURL, podemos fazer downloads ou uploads de ficheiros em servidores remotos, fazer login em sites que estão noutros servidores e ainda ter acesso á área de membros destes sites, enfim, as possibilidades são infinitas.
O manual da cURL esta disponível no site http://www.php.net/manual/pt_BR/book.curl.php
Segue um exemplo simples de utilização da cURL:
function AbreSite ( $url ) {
$site_url = $url;
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $site_url);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
ob_start();
curl_exec($ch);
curl_close($ch);
$file_contents = ob_get_contents();
ob_end_clean();
return $file_contents;
}$site = "http://www.degahosting.com.br";
$conteudo = Abresite( $site );
echo $conteudo;?>