Converti curl in PHP

curl2code converte i comandi curl in codice PHP utilizzando l'estensione cURL o la libreria Guzzle. La conversione avviene nel tuo browser tramite WebAssembly per la massima privacy. Per linguaggi lato server simili, consulta il nostro convertitore da curl a Python o da curl a Ruby. Di seguito sono riportati esempi pratici in PHP.

Come copiare curl dal tuo browser

  1. 1

    Apri DevTools

    Premi F12 o Ctrl+Shift+I per aprire gli strumenti per sviluppatori del browser.

  2. 2

    Vai alla scheda Network

    Fai clic sulla scheda Network ed esegui l'azione che attiva la richiesta HTTP.

  3. 3

    Copia come cURL

    Fai clic con il tasto destro sulla richiesta → CopiaCopia come cURL. Quindi incollalo sopra.

Domande Frequenti

Cos'è PHP cURL?

L'estensione curl di PHP è un wrapper attorno alla libreria C libcurl, che fornisce potenti funzionalità client HTTP. Supporta virtualmente tutti i protocolli e le funzionalità supportate da curl stesso. Inizializza con curl_init(), imposta le opzioni con curl_setopt() ed esegui con curl_exec(). curl2code supporta anche Guzzle e Requests come alternative.

PHP cURL vs Guzzle vs Requests — quale dovrei usare?

PHP cURL è di basso livello e integrato — non è necessario Composer. Guzzle è il client HTTP PHP più popolare con supporto PSR-7, middleware e richieste asincrone. Requests offre un'API semplice per compiti rapidi. Usa Guzzle per i progetti moderni, PHP cURL per configurazioni minimali. Per opzioni simili in altri linguaggi, vedi da curl a Python.

Come gestire l'autenticazione in PHP?

Con cURL: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer token']). Per l'autenticazione Basic: curl_setopt($ch, CURLOPT_USERPWD, 'user:pass'). Guzzle usa 'auth' => ['user', 'pass'] o 'headers' => ['Authorization' => 'Bearer token']. curl2code gestisce automaticamente i flag -u e Bearer.

Come inviare dati form multipart in PHP?

Con cURL: passa un array a CURLOPT_POSTFIELDS contenente new CURLFile('path') per i file. Guzzle usa l'opzione 'multipart' con array di campi/file. curl2code converte i flag -F nel formato corretto per ogni variante di libreria PHP.

Come gestire gli errori HTTP in PHP?

Con cURL: controlla curl_errno($ch) per gli errori di trasporto e analizza manualmente lo stato della risposta. Guzzle lancia RequestException in caso di fallimento — cattura ClientException (4xx), ServerException (5xx) e ConnectException (rete). Chiama sempre curl_close($ch) per liberare le risorse.

Come effettuare richieste HTTP asincrone in PHP?

Guzzle supporta l'asincronia tramite $client->requestAsync('GET', $url) che restituisce una Promise. Usa Promise\Utils::all() per richieste concorrenti. Con cURL, usa le funzioni curl_multi_* per l'esecuzione parallela. Per PHP veramente asincrono, considera i framework ReactPHP o Amp con i loro client HTTP.

Come impostare i timeout in PHP?

Con cURL: CURLOPT_CONNECTTIMEOUT per la connessione e CURLOPT_TIMEOUT per il tempo totale della richiesta. Guzzle accetta le opzioni 'connect_timeout' e 'timeout' in secondi. Queste mappano direttamente sulle opzioni --connect-timeout e --max-time di curl.

Come usare un proxy in PHP?

Con cURL: curl_setopt($ch, CURLOPT_PROXY, 'http://proxy:8080'). Per SOCKS5: aggiungi CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5. Guzzle usa l'opzione 'proxy' => 'http://proxy:8080'. curl2code converte i flag -x e --proxy nel codice PHP corrispondente.

Come inviare una richiesta POST con un corpo JSON in PHP?

Converti un comando curl POST come curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL in PHP usando curl2code. Il codice generato utilizza curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)). curl2code rileva automaticamente i flag -d/--data con contenuto JSON e imposta l'intestazione Content-Type appropriata nel codice cURL.

Come aggiungere l''autorizzazione con Bearer token in PHP?

Passa curl -H "Authorization: Bearer YOUR_TOKEN" URL a curl2code e genererà il codice cURL con l'intestazione di autenticazione: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer TOKEN']). curl2code rileva i Bearer token sia dai flag -H "Authorization: Bearer ..." che --oauth2-bearer. Per la Basic auth, usa -u user:pass.

Come impostare l''intestazione Content-Type in PHP?

curl2code converte curl -H "Content-Type: application/json" URL in codice cURL con l'intestazione corretta: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']). Per i dati -d, curl utilizza come predefinito application/x-www-form-urlencoded; per i caricamenti di moduli -F, utilizza multipart/form-data. curl2code mappa ciascuno alla corretta API di cURL.

Estensione PHP cURL vs Guzzle — quale dovrei usare?

L'estensione PHP cURL (funzioni curl_*) è integrata in PHP e non richiede dipendenze extra — ideale per richieste semplici o quando si desidera un overhead minimo. Guzzle è un client HTTP completo con middleware, richieste asincrone, supporto PSR-7/PSR-18 e tentativi automatici. Usa cURL per script leggeri, Guzzle per applicazioni complesse. curl2code genera codice per entrambi — seleziona la variante preferita nel menu a discesa della lingua.

Link utili

Guide curl

Converti curl in altri linguaggi