Libcurl jest biblioteką autorstwa Daniela Stenberga, umożliwiającą porozumiewanie się za pomocą najbardziej popularnych protokołów sieciowych, takich jak HTTP, FTP, TFTP, TELNET, DICT, FILE i LDAP. Pozwala również na korzystanie z serwerów proxy, ciastek, uwierzytelniania czy uploadu plików poprzez formularze. Biblioteka została zaimplementowana w wielu językach programowania, również w PHP jako rozszerzenie CURL. Client URL Library jest niezastąpiona przy tworzeniu testów zewnętrznych aplikacji. Odznacza się również wielokrotnie wyższą wydajnością niż standardowe wrappery. W niniejszym artykule postaram się omówić zarówno funkcje biblioteczne, jak i ciekawsze sposoby wykorzystania tytułowej biblioteki.
Artykuł jest przeznaczony dla programistów PHP pragnących poznać rozszerzenie cURL. Od czytelnika jest wymagana podstawowa wiedza o języku PHP i protokołach sieciowych. W obrębie tekstu będą umieszczane wskazówki dotyczące sposobu komunikacji poprzez konkretny protokół, lecz warto zapamiętać, że tematem artykułu nie jest opis samych protokołów.
Ze względu na obszerność omawianych zagadnień, tekst został podzielony na trzy części:
Część pierwsza:
Część druga:
Część trzecia:
Przykłady zostały sprawdzone na serwerze z zainstalowanym PHP 5.1.4, ale powinny działać również z PHP 4. Jeżeli jakiś kod nie będzie funkcjonował prawidłowo, wpierw zaglądnij do dokumentacji, aby sprawdzić czy twoja wersja PHP obsługuje wszystkie potrzebne funkcje.
dlaczego znowu nie można wydrukować sobie tego artykułu ??
jak można pobrać nagłówki wysyłane przez serwer, do którego chcemy się połączyć i zapisać je w tablicy lub w jakiejś zmiennej
witam,
na poczatek chiał bym pogratulowaćdobrego artyku, jak narazie njlepszy jaki w seci znalazłem o curl
chciałbym sie dowedzieć jak mozna zapisać cookies do zmiennej i puźniej z niej odczytać je
A jak wykasować automatycznie ciastka po zakończeniu sesji curl?
Słuszna uwaga. Poprawiłem to. Wielkie dzięki za wskazanie błędu. Dziwne, że u mnie nie wywalało nic.
przelicz nawiasy klamrowe w funkcji showAll , brakuje jednego zamykajcego, jak dodasz powinno zadzaialac
Nie mam jak tego sprawdzić teraz dokładnie, ale w drugim skrypcie prawdopodobnie zamiast URL wpisałeś nazwę samego pliku.
Sprawdzałem skrypty wcześniej i dziwię się, że coś takiego wyskakuje... Jeszcze raz bym rzucił na to okiem, ale nie mam jak, niestety...
Witam mam pewien problem : skopiowałem przykładowa stronke - "site.php" jednak gdy ją włańczam manualnie wyskakuje bład :
Parse error: syntax error, unexpected $end in .........../site.php on line 20
lub poprzez L.2.2 wtedy nic sie nie dzieje a gdy przez 3.1 , został wygenerowany nastepujacy bład :
Błąd #6: Couldn't resolve host 'site.php'
Wszystkie informacje o transferze są zwracane przez metodę curl_getinfo, tak jak jest napisane w 3. części. Nie chciałem zamieszczać spisu stałych, gdyż wszystkie znajdują się manualu.
http://pl.php.net/curl_getinfo
wszystko pięknie i fajnie,
ale jak to wygląda od strony bezpieczeństwa?
jak sprawdzić, jaki dokument pobieram i ile zajmuje?
co w przypadku jeśli przy wykonaniu:
$ch = curl_init('http://localhost/curl/site.php');
okaże się, że to wcale nie jest plik typu,
którego chciałbym (xml, html) a na przykład 700 avi?