Konwertuj curl na PHP
curl2code konwertuje polecenia curl na kod PHP przy użyciu rozszerzenia cURL lub biblioteki Guzzle. Konwersja odbywa się w przeglądarce poprzez WebAssembly, zapewniając pełną prywatność. W przypadku podobnych języków po stronie serwera, sprawdź nasz konwerter curl na Python lub curl na Ruby. Poniżej znajdują się praktyczne przykłady w PHP.
Jak skopiować polecenie curl z przeglądarki
- 1
Otwórz DevTools
Naciśnij F12 lub Ctrl+Shift+I, aby otworzyć narzędzia programistyczne przeglądarki.
- 2
Przejdź do karty Sieć
Kliknij kartę Sieć i wykonaj akcję, która wywołuje żądanie HTTP.
- 3
Kopiuj jako cURL
Kliknij żądanie prawym przyciskiem myszy → Kopiuj → Kopiuj jako cURL. Następnie wklej je powyżej.
Najczęściej zadawane pytania
Czym jest PHP cURL?
Rozszerzenie curl w PHP to wrapper dla biblioteki C libcurl, zapewniający potężne możliwości klienta HTTP. Obsługuje praktycznie wszystkie protokoły i funkcje, które obsługuje sam curl. Inicjalizuj za pomocą curl_init(), ustawiaj opcje za pomocą curl_setopt() i wykonuj za pomocą curl_exec(). curl2code obsługuje również Guzzle i Requests jako alternatywy.
PHP cURL vs Guzzle vs Requests — którego powinienem użyć?
PHP cURL jest niskopoziomowy i wbudowany — nie wymaga Composera. Guzzle to najpopularniejszy klient HTTP w PHP z obsługą PSR-7, middleware i żądaniami asynchronicznymi. Requests oferuje proste API do szybkich zadań. Używaj Guzzle w nowoczesnych projektach, a PHP cURL w minimalnych konfiguracjach. Podobne opcje w innych językach znajdziesz w curl na Python.
Jak obsługiwać uwierzytelnianie w PHP?
W cURL: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer token']). Dla Basic auth: curl_setopt($ch, CURLOPT_USERPWD, 'user:pass'). Guzzle używa 'auth' => ['user', 'pass'] lub 'headers' => ['Authorization' => 'Bearer token']. curl2code automatycznie obsługuje flagi -u i Bearer.
Jak wysyłać dane formularza multipart w PHP?
W cURL: przekaż tablicę do CURLOPT_POSTFIELDS zawierającą new CURLFile('path') dla plików. Guzzle używa opcji 'multipart' z tablicami pól/plików. curl2code konwertuje flagi -F na poprawny format dla każdego wariantu biblioteki PHP.
Jak obsługiwać błędy HTTP w PHP?
W cURL: sprawdź curl_errno($ch) pod kątem błędów transportu i ręcznie parsuj status odpowiedzi. Guzzle rzuca RequestException w przypadku niepowodzeń — przechwytuj ClientException (4xx), ServerException (5xx) oraz ConnectException (sieć). Zawsze wywołuj curl_close($ch), aby zwolnić zasoby.
Jak wykonywać asynchroniczne żądania HTTP w PHP?
Guzzle obsługuje asynchroniczność poprzez $client->requestAsync('GET', $url) zwracające Promise. Użyj Promise\Utils::all() dla żądań współbieżnych. W cURL użyj funkcji curl_multi_* do równoległego wykonywania. Dla prawdziwie asynchronicznego PHP rozważ frameworki ReactPHP lub Amp wraz z ich klientami HTTP.
Jak ustawić limity czasu w PHP?
W cURL: CURLOPT_CONNECTTIMEOUT dla połączenia i CURLOPT_TIMEOUT dla całkowitego czasu żądania. Guzzle przyjmuje 'connect_timeout' i 'timeout' w sekundach. Mapują się one bezpośrednio na opcje curl --connect-timeout i --max-time.
Jak używać proxy w PHP?
W cURL: curl_setopt($ch, CURLOPT_PROXY, 'http://proxy:8080'). Dla SOCKS5: dodaj CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5. Guzzle używa opcji 'proxy' => 'http://proxy:8080'. curl2code konwertuje flagi -x i --proxy na odpowiedni kod PHP.
Jak wysłać żądanie POST z ciałem JSON w języku PHP?
Konwertuj polecenie curl POST, takie jak curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL na kod PHP za pomocą curl2code. Wygenerowany kod używa curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)). curl2code automatycznie wykrywa flagi -d/--data z zawartością JSON i ustawia odpowiedni nagłówek Content-Type w kodzie cURL.
Jak dodać autoryzację Bearer token w języku PHP?
Przekaż curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code, a narzędzie wygeneruje kod cURL z nagłówkiem autoryzacji: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer TOKEN']). curl2code wykrywa tokeny Bearer zarówno z flag -H "Authorization: Bearer ...", jak i --oauth2-bearer. W przypadku Basic auth użyj -u user:pass.
Jak ustawić nagłówek Content-Type w języku PHP?
curl2code konwertuje curl -H "Content-Type: application/json" URL na kod cURL z właściwym nagłówkiem: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']). Dla danych -d curl domyślnie ustawia application/x-www-form-urlencoded; dla przesyłania formularzy -F używa multipart/form-data. curl2code mapuje każde z nich na odpowiednie API cURL.
Rozszerzenie PHP cURL vs Guzzle — którego powinienem użyć?
Rozszerzenie PHP cURL extension (funkcje curl_*) jest wbudowane w PHP i nie wymaga dodatkowych zależności — idealne dla prostych żądań lub gdy chcesz zminimalizować narzut. Guzzle to w pełni funkcjonalny klient HTTP z obsługą middleware, żądań asynchronicznych, PSR-7/PSR-18 oraz automatycznymi ponowieniami. Używaj cURL w lekkich skryptach, a Guzzle w złożonych aplikacjach. curl2code generuje kod dla obu — wybierz preferowany wariant z listy rozwijanej języków.
Przydatne linki
Poradniki curl
Kody błędów curl
Sprawdź dowolny kod wyjścia curl — przyczyny, rozwiązania i wskazówki debugowania.
Pobieranie plików za pomocą curl
Zapisuj pliki z -o, -O, podążaj za przekierowaniami, wznawiaj pobieranie i więcej.
SSL, TLS i proxy
Konfiguracja certyfikatów, wersji TLS, proxy HTTP/SOCKS i niestandardowego DNS.