curl_init

(PHP 4 >= 4.0.2, PHP 5)

curl_initInizializza una sessione CURL

Descrizione

resource curl_init ([ string $url = NULL ] )

Inizializza una nuova sessione e restituisce un gestore cURL da usare con le funzioni curl_setopt(), curl_exec(), e curl_close().

Elenco dei parametri

url

Se viene fornita, l'opzione CURLOPT_URL verrà impostata al suo valore. Si può impostare manualmente quest'ultima, usando la funzione curl_setopt().

Nota:

Il protocollo file viene disabilitato da cURL se viene impostato open_basedir.

Valori restituiti

Restituisce un gestore cURL in caso di successo, FALSE in caso di errore.

Esempi

Example #1 Inizializzare una nuova sessione cURL e scarica una pagina web

<?php
// crea una nuova risorsa cURL
$ch curl_init();

// imposta l'URL e le altre opzioni appropriate
curl_setopt($chCURLOPT_URL"http://www.example.com/");
curl_setopt($chCURLOPT_HEADER0);

// imposta l'URL e lo passa al browser
curl_exec($ch);

// chiude la risorsa cURL, e libera le risorse di sistema
curl_close($ch);
?>

Vedere anche:

add a note add a note

User Contributed Notes 7 notes

up
18
jharris at et2brut dot us
3 years ago
Just to clarify:

Spaces in the URL need to be replaced with a %20.

Spaces in the querystring need to be replaced with a +
up
14
James P
1 year ago
Regarding spaces in URLs;
Please read
http://php.net/manual/en/function.urlencode.php
up
1
ezyang at php dot net
7 years ago
curl_init() has undefined behavior if you pass 'false' to it and can crash when you try to copy the resulting handle using curl_copy_handle(). Keep this in mind if you create a wrapper object for CURL.
up
-1
qrworld.net
12 days ago
Here you have a function that I use to get the content of a URL using cURL:

function getUrlContent($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$data = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return ($httpcode>=200 && $httpcode<300) ? $data : false;
}

The source comes from this website:

http://softontherocks.blogspot.com/2014/11/descargar-el-contenido-de-una-url.html
up
-2
darkstar_ae at hotmail dot com
8 years ago
For some reason on some webservers it may not be able to understand what cURL is doing. If you're getting unexpected results (like getting no output when the URL is valid) while using curl_init(). Add a trailing slash '/' after the url if you haven't done so already.
up
-9
rossixx at gmx dot net
7 years ago
e.g. you can check how many characters are on test_1.php

or you can it use for more, i have used this function for a nagios check.

<?PHP
echo "CURL - function test <br>" ;
if (
$load == 1){
function
webcheck ($url) {
       
$ch = curl_init ($url) ;
       
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1) ;
       
$res = curl_exec ($ch) ;
       
curl_close ($ch) ;
        return (
$res) ;
}
echo
"url = $url <br>" ;

$erg = webcheck("my_page.php/test_1.php") ;
$zahl = strlen ($erg) ;
echo
"length = $zahl " ;
?>
up
-31
9 years ago
<?php
    vWritePageToFile
( 'http://es.php.net', 'es.php.net.txt' );
?>
... And the text file stand in the server in the same folder that the script.
This is the function code.-
<?php
   
function vWritePageToFile( $sHTMLpage, $sTxtfile ) {
    
$sh =          curl_init( $sHTMLpage );
    
$hFile =                       FOpen( $sTxtfile, 'w' );
    
curl_setopt( $sh, CURLOPT_FILE, $hFile );
    
curl_setopt( $sh, CURLOPT_HEADER, 0 );
    
curl_exec  ( $sh );
    
$sAverageSpeedDownload = curl_getInfo( $sh, CURLINFO_SPEED_DOWNLOAD );
    
$sAverageSpeedUpload   = curl_getInfo( $sh, CURLINFO_SPEED_UPLOAD );
     echo
'<pre>';
     echo
'Average speed download == ' . $sAverageSpeedDownload . '<br>';
     echo
'Average Speed upload    == ' . $sAverageSpeedUpload   . '<br>';
     echo
'<br>';
    
$aCURLinfo = curl_getInfo( $sh );
    
print_r( $aCURLinfo );
     echo
'</pre>';
    
curl_close$sh );
    
FClose    $hFile );
     echo
'(<b>See the file  "'.$sTxtfile.'"  in the same path of the hosting'.
         
' to where this script PHP</b>).<br>';
    }
?>
To Top