Buongiorno, oggi spieghiamo in maniera semplice e veloce, come effettuare in PHP una richiesta ad un’altro server tramite cURL, utilizzando dei parametri GET all’interno dell’URL.
Il codice è molto semplice e basilare, quindi potrebbe servirvi qualche altra opzione aggiuntiva alla richiesta. A tal proposito vi consiglio di verificare le opzioni disponibili per il comando cURL, sul manuale online di PHP.
Vediamo adesso un esempio funzionante, con variabili GET all’interno della richiesta e che utilizza l’escape dei caratteri speciali, in modo da non vedere fallita la vostra richiesta:
// Inizializziamo la funzione cURL tramite la funzione curl_init()
$ch = curl_init();
// Specifichiamo qual'è l'indirizzo della pagina che cURL dovrà scaricare, specificando all'interno dell'indirizzo le variabili GET da inviare al server. N.B. Nel caso di un URL con caratteri speciali o spazi, dovrai fare l'escape dei caratteri con la seguente funzione prima di utilizzarlo.
// Effettuo l'escape dei caratteri speciali che andranno all'interno dell'URL
$variabileesc = curl_escape($ch, 'test %$!');
curl_setopt($ch, CURLOPT_URL, "https://www.mesoft.it?variabile1=$variabileesc");
// Facciamo in modo che non vengano scaricati gli headers
// N.B. Puoi omettere questo parametro senza problemi
curl_setopt($ch, CURLOPT_HEADER, 0);
// Facciamo in modo che cURL ci ritorni indietro la risposta
// altrimenti non saremo in grado di vedere cosa ci ha
// ritornato indietro la pagina da noi richiamata
// per questo impostiamo l'opzione RETURNTRANSFER con valore true
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// effettuiamo la richiesta e la memorizziamo nella variabile $risposta
$risposta = curl_exec($ch);
// chiudiamo cURL una volta che la nostra richiesta al server
// è stata processata
curl_close($ch);
// Possiamo eventualmente stampare a video la variabile $risposta
// per vedere il risultato della nostra richiesta.
echo $risposta;
Il codice è molto semplice e veloce da utilizzare.
Nei prossimi articoli, vedremo come gestire le richieste cURL che utilizzano dei parametri POST all’interno della richiesta e come gestire ed elaborare eventuali risposte in formato JSON.