🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi cURL PHP

Codegrind Team•Jul 12 2024

Ecco degli esercizi con soluzione per praticare l’uso di cURL in PHP.

Esercizio 1: Fare una Richiesta GET

Utilizzare cURL per fare una richiesta GET a un'API e stampare la risposta.
<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://api.chucknorris.io/jokes/random");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

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

echo $response; // Output: JSON response with a Chuck Norris joke
?>

Esercizio 2: Fare una Richiesta POST

Utilizzare cURL per fare una richiesta POST a un'API e stampare la risposta.
<?php
$data = array(
    "name" => "Mario",
    "email" => "mario@example.com"
);

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://jsonplaceholder.typicode.com/posts");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

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

echo $response; // Output: JSON response with the created post
?>

Esercizio 3: Impostare Headers Personalizzati

Utilizzare cURL per fare una richiesta GET con headers personalizzati.
<?php
$ch = curl_init();

$headers = [
    'Content-Type: application/json',
    'Authorization: Bearer YOUR_ACCESS_TOKEN'
];

curl_setopt($ch, CURLOPT_URL, "https://api.example.com/data");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

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

echo $response; // Output: Response from the API
?>

Esercizio 4: Gestire gli Errori di cURL

Utilizzare cURL per fare una richiesta GET e gestire eventuali errori.
<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://api.example.com/data");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);

if(curl_errno($ch)) {
    echo 'Errore cURL: ' . curl_error($ch);
} else {
    echo $response; // Output: Response from the API
}

curl_close($ch);
?>

Esercizio 5: Inviare Dati JSON con cURL

Utilizzare cURL per fare una richiesta POST inviando dati in formato JSON.
<?php
$data = array(
    "name" => "Mario",
    "email" => "mario@example.com"
);

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://jsonplaceholder.typicode.com/posts");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

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

echo $response; // Output: JSON response with the created post
?>

Esercizio 6: Scaricare un File con cURL

Utilizzare cURL per scaricare un file da un URL e salvarlo localmente.
<?php
$url = "https://www.example.com/file.zip";
$destinazione = "file.zip";

$ch = curl_init($url);
$fp = fopen($destinazione, 'w+');

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

curl_exec($ch);
curl_close($ch);
fclose($fp);

echo "File scaricato con successo!";
?>

Esercizio 7: Ottenere Informazioni sull’Operazione cURL

Utilizzare cURL per fare una richiesta GET e ottenere informazioni dettagliate sull'operazione.
<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://api.chucknorris.io/jokes/random");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);

if($response === false) {
    echo 'Errore cURL: ' . curl_error($ch);
} else {
    $info = curl_getinfo($ch);
    echo "Tempo di esecuzione: " . $info['total_time'] . " secondi<br>";
    echo "Dimensione dei dati scaricati: " . $info['size_download'] . " bytes<br>";
    echo "Risposta HTTP: " . $info['http_code'] . "<br>";
    echo "URL finale: " . $info['url'] . "<br>";
}

curl_close($ch);
?>