curl_setopt — Ustawia opcjÄ™ transferu cURL
Ustawia opcje danego uchwytu sesji cURL
Parametry
- ch
-
Uchwyt cURL zwrócony przez curl_init().
- option
-
CURLOPT_XXX opcja do ustawienia.
- value
-
vartość do ustawienia option .
value powinna być bool dla następujących wartości z opcji parametru:
Opcja Ustaw wartość CURLOPT_AUTOREFERER TRUE automatycznie ustawia Referer: pole żądaÅ„, gdzie nastÄ™puje Location:przekierowanie. CURLOPT_BINARYTRANSFER TRUE aby powrócić do stanu wyjÅ›ciowego, gdy użyty jest CURLOPT_RETURNTRANSFER. CURLOPT_COOKIESESSION TRUE by oznaczyć to jako nowe cookie (ciasteczko) "sesje". To bÄ™dzie siÅ‚a biblioteki curl (libcurl) by ignorować wszystkie cookies (ciasteczka) chodzi o Å‚adowanie ich jako "session cookies" z poprzedniej sesji. DomyÅ›lnie, libcurl zawsze zapisuje i Å‚aduje wszystkie cookies, niezależnie czy sÄ… one session cookies czy nie. Session cookies sÄ… cookies (ciasteczkami) terminu ważnoÅ›ci sÄ… żywe i istniejÄ… tylko dla tej sesji. CURLOPT_CRLF TRUE konwertuje nowe linie Unix na transfery nowych lini CRL CURLOPT_DNS_USE_GLOBAL_CACHE TRUE do korzystania z globalnej pamiÄ™ci podrÄ™cznej systemu DNS. Ta opcja nie jest bezpiecznym wÄ…tkiem i jest domyÅ›lnie włączona. CURLOPT_FAILONERROR TRUE na cichÄ… porażkÄ™, jeÅ›li HTTP zwróci kod wiÄ™kszy lub równy 400. Zachowaniem domyÅ›lnym jest, powrócenie do strony normalnie, ignorujÄ…c kod.CURLOPT_FILETIME TRUE próbuje pobrać datÄ™ modyfikacji zdalnego dokumentu.
Wartość ta może być pobrana za pomocÄ…CURLINFO_FILETIME z opcjÄ… curl_getinfo().CURLOPT_FOLLOWLOCATION TRUE Å›ledzi wszystkie "Location: " nagÅ‚ówka, server wysyÅ‚a jako część nagÅ‚ówka HTTP . CURLOPT_FORBID_REUSE TRUE wymuszenie połączenia wyraźnie zamkniÄ™tego kiedy zakoÅ„czy przetwarzanie, i nie mogÄ… być łączone w celu ich ponownego użycia.CURLOPT_FRESH_CONNECT TRUE wymuszenie wykorzystania nowego połączenia z pamiÄ™ci podrÄ™cznej, zamiast jednego. CURLOPT_FTP_USE_EPRT TRUE wykorzystanie EPRT (LPRT i) podczas aktywnego pobierania FTP.Użyj FALSE aby wyłączyć EPRT i LPRT i używać tylko PORT. CURLOPT_FTP_USE_EPSV TRUE najpiew próbuje komende EPSV dla transferu FTP przed powrotem do cofniÄ™cia PASV. Wartość false wyłącza EPSV. CURLOPT_FTPAPPEND TRUE aby dołączyć do zdalnego pliku zamiast go nadpisać. CURLOPT_FTPASCII alians CURLOPT_TRANSFERTEXT. użyj tego zamiast. CURLOPT_FTPLISTONLY TRUE tylko lista nazw katalogów FTP. CURLOPT_HEADER TRUE dołącza nagÅ‚ówek w wyjÅ›ciu. CURLOPT_HTTPGET TRUE Resetuje żądanie HTTP Ponieważmetody GET.
GET jest ustawione domyÅ›lnie , jest konieczny tylko jeÅ›li żadanie metody ulegnie zmianieCURLOPT_HTTPPROXYTUNNEL TRUE bezpoÅ›redni tunel dajÄ…cy proxy HTTP . CURLOPT_MUTE TRUE aby byÅ‚ caÅ‚kowicie wyciszony w odniesieniu do funkcji cURL. CURLOPT_NETRC TRUE skanuje ~/.netrc plik aby znaleść nazwÄ™ użytkownika i hasÅ‚o dla zdalnej storny, to polÄ…czenie jest ustawione z. CURLOPT_NOBODY TRUE wyklucza body z wyjÅ›cia. CURLOPT_NOPROGRESS TRUE aby wyłączyć miernik postÄ™pu dla transferów cURL
CURLOPT_NOSIGNAL TRUE aby ignorować wszelkie funkcje cURL
powoduje, że sygnał będzie wysłany do procesu PHP.Jest domyślnie włączona w wielo wątkowym SAPIs więc opcje timeout są wciąż używane.CURLOPT_POST TRUE do regularnego wysyłania HTTP POST. Ten POST jest normalnym rodzajem application/x-www-form-urlencoded,
Najczęściej używanym przez formularze HTMLCURLOPT_PUT TRUE aby umieÅ›cić plik HTTP. Plik muis być umieszczony z CURLOPT_INFILE i CURLOPT_INFILESIZE. CURLOPT_RETURNTRANSFER TRUE aby zwrócic transfer jako Å‚aÅ„cuch znaków zwróconej wartoÅ›ci curl_exec() zamiast wyÅ›wietlać go bezpoÅ›rednio CURLOPT_SSL_VERIFYPEER FALSE aby zatrzymać weryfikacje certyfikatu. ZastÄ™pcÄ…
sprawdzania certyfikatów przeciw może być okreÅ›lony z opcjÄ… CURLOPT_CAINFO lub certyfikat katalogu może być okreslony z opcjÄ… CURLOPT_CAPATH .
CURLOPT_SSL_VERIFYHOST
może być takżeTRUE lub FALSE jeÅ›li CURLOPT_SSL_VERIFYPEER jest wyłączony (domyÅ›lnie jest 2).CURLOPT_TRANSFERTEXT TRUE aby użyć tyrbu ASCII dla transferów FTP . Dla LDAP, pobiera dane w postaci zwykÅ‚ego tekstu, zamiast HTML. CURLOPT_UNRESTRICTED_AUTH TRUE aby zachowac wysÅ‚ane nazwe użytkownika i hasÅ‚o nawet wtedy kiedy nastÄ™pujÄ…ce lokalizacje (za pomocÄ… CURLOPT_FOLLOWLOCATION),
, zmieniły nazwę hosta.CURLOPT_UPLOAD TRUE aby przygotować się do wysyłaniaCURLOPT_VERBOSE TRUE aby wyprowadzić pełne informacje. Wypisze wyprowadzony STDERR, lub określony plik za pomocą CURLOPT_STDERR.
value powinien być liczbÄ… caÅ‚kowitÄ… dla nastÄ™pujÄ…cych wartoÅ›ci z opcji parametru:Opcja Ustaw wartość CURLOPT_BUFFERSIZE Rozmiar bufora do użytku dla każdego odczytu.Nie ma żadnej gwarancji, to żądanie zostanie speÅ‚nione.CURLOPT_CLOSEPOLICY Albo CURLCLOSEPOLICY_LEAST_RECENTLY_USED lub CURLCLOSEPOLICY_OLDEST IstniejÄ… trzy inne . CURLCLOSEPOLICY_ staÅ‚e , ale cURL jeszce ich nie wspiera. CURLOPT_CONNECTTIMEOUT Liczba sekund oczekiwania przy jednoczenej próbie połączenia. Użyj 0 dla nieokreÅ›lonego oczekiwania. CURLOPT_DNS_CACHE_TIMEOUT Liczba sekund, aby zachować w pamiÄ™ci wpisy DNS
Ta opcja jest ustawiona domyÅ›lnie na 120 (2 minuty) .CURLOPT_FTPSSLAUTH Metody uwierzytelniania FTP (kiedy jest aktywny): CURLFTPAUTH_SSL (pierwsza próba SSL), CURLFTPAUTH_TLS (pierwsza próba TLS), lubCURLFTPAUTH_DEFAULT (niech decyduje cURL ). CURLOPT_HTTP_VERSION CURL_HTTP_VERSION_NONE (DomyÅ›lnie, CURL pozwala zdecydować, która wersja ma zostać użyta), CURL_HTTP_VERSION_1_0 (lub HTTP/1.0), CURL_HTTP_VERSION_1_1 ( HTTP/1.1). CURLOPT_HTTPAUTH Metoda uwieżytelnienia HTTP do użycia. opcjami sÄ…: CURLAUTH_BASIC , CURLAUTH_DIGEST , CURLAUTH_GSSNEGOTIATE , CURLAUTH_NTLM , CURLAUTH_ANY , i CURLAUTH_ANYSAFE .operator | (lub) może być użyty to łączneia wiÄ™cej niż jednej metody. Jesli jest wykonany, cURL przeprowadzi sonde serwera aby zobaczyć co wspierajÄ… metody i wybrać najlepszÄ… z nich.CURLAUTH_ANY jest alianse dla CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM.CURLAUTH_ANYSAFE jest aliansem dla CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM.
CURLOPT_INFILESIZE Oczekuje rozmiaru pliku w bajtach , kiedy wysyÅ‚amy plik zdalnej strony CURLOPT_LOW_SPEED_LIMIT Szybkość transferu, w bajtach na sekunde, transfer powinien być niższy niż podczas CURLOPT_LOW_SPEED_TIME sekund dla PHP rozważy zbyt wolny transfer i go przerwie CURLOPT_LOW_SPEED_TIME Liczba sekund, transfer spowinien być niższy CURLOPT_LOW_SPEED_LIMIT dla PHP rozważy zbyt wolny transfer i go przerwie CURLOPT_MAXCONNECTS Maksymalna iloÅ›c trwaÅ‚ych połączeÅ„ które sÄ… dozwolone. Po przekroczeniu limitu, CURLOPT_CLOSEPOLICY zostaje użyty do okreÅ›lenia połączenia do zamkniÄ™cia. CURLOPT_MAXREDIRS Maksymalna liczba przekierowaÅ„ HTTP. Użyj tej opcji obok CURLOPT_FOLLOWLOCATION. CURLOPT_PORT numer alternatywnego portu dla połączenia CURLOPT_PROXYAUTH Metoda autoryzacji HTTP użyta dla polÄ…czenia poprzez porxy. Użyj tej samej bitmaski jak opisano w CURLOPT_HTTPAUTH. dla uwieżytelnienia proxy, sÄ… aktualnie wspierane tylko CURLAUTH_BASIC i CURLAUTH_NTLM CURLOPT_PROXYPORT Numer portu dla polÄ…czniea proxy. Numer ten może też być ustawiony w CURLOPT_PROXY. CURLOPT_PROXYTYPE albo CURLPROXY_HTTP (domyÅ›lnie) lub CURLPROXY_SOCKS5 . CURLOPT_RESUME_FROM offset, w bajtach, Aby wznowić transfer od.CURLOPT_SSL_VERIFYHOST 1 sprawdza istnienie czÄ™stych nazw w certyfikacie SSL . 2 sprawdza istnienie na
zw i sprawdza, czy pasuje do nazwy hosta.CURLOPT_SSLVERSION Wersja SSL do użycia (2 or 3) . DomyÅ›lnie PHP próbuje okreÅ›lić ten sam, jednaki w
niektórych przypadkach musi to być ustawione rÄ™cznie.CURLOPT_TIMECONDITION Jak traktowane jestCURLOPT_TIMEVALUE. Użyj CURL_TIMECOND_IFMODSINCE aby zwrócić tylko strone
jeżeli zostaÅ‚a zmodyfikowanaod czasu okreÅ›lonego w CURLOPT_TIMEVALUE. jeÅ›li nie zostaÅ‚a zmodyfikowana zostanie zwrócony nagÅ‚ówek "304 Not Modified" zakÅ‚adajÄ…c że CURLOPT_HEADER jest TRUE. Użyj CURL_TIMECOND_ISUNMODSINCE dla odwrotnego efektu. CURL_TIMECOND_IFMODSINCEjest domyÅ›lny .CURLOPT_TIMEOUT Maksymalna liczba sekundi pozwalajÄ…ca na wykonanie funkcji cURL CURLOPT_TIMEVALUE czas w sekundach od January 1st, 1970. Czasu bÄ™dzie używany przez CURLOPT_TIMECONDITION. DomyÅ›lnie użyty jest, CURL_TIMECOND_IFMODSINCE.
value powinna być ciÄ…giem dla nastÄ™pujÄ…cych wartoÅ›ci z opcji parametru:Opcja Ustaw wartość CURLOPT_CAINFO Nazwa pliku posiadajÄ…cego jeden lub wiÄ™cej certyfikatów w celu wzajemnego sprawdzenia.Ma to tylko sens używamuy go w kombinacji z CURLOPT_SSL_VERIFYPEER.CURLOPT_CAPATH Katalog posiadajÄ…cy wiele certyfikatów CA. Użyj tej opcji obok CURLOPT_SSL_VERIFYPEER. CURLOPT_COOKIE Zawartość nagÅ‚ówka "Set-Cookie: " użytego w żądaniu HTTP. CURLOPT_COOKIEFILE Nazwa pliku zawierajÄ…cego dane cookie (ciasteczka). Plik cookie może być w formacie Netscape , lub poprostu zwykÅ‚y styl nagÅ‚ówka HTTP. CURLOPT_COOKIEJAR Nazwa pliku zapisujÄ…cego wszystkie wewnÄ™trzne cookies, kiedy zostanie zamkniÄ™te połączenie CURLOPT_CUSTOMREQUEST Nie standardowe żądanie metody użytej zamiast "GET" lub "HEAD" kiedy wykonywane jest zÄ…danie HTTP. Jest to użyteczne dla wykonania "DELETE" lub innych, bardziej zasÅ‚aniajÄ…cych żądania HTTP. Ważnymi wartoÅ›ciami sÄ… rzeczy takie jak "GET", "POST", "CONNECT"i tak dalej. Nie wprowadzaj caÅ‚ego żądania HTTP w tej lini. Na przykÅ‚ad, wprowadzenie "GET /index.html HTTP/1.0\r\n\r\n" byÅ‚o by niepoprawne
CURLOPT_EGDSOCKET CURLOPT_RANDOM_FILE, spodizewa siÄ™ nazwy pliku gniazda Entropy Gathering Daemo. CURLOPT_ENCODING Zawartość nagÅ‚ówka "Accept-Encoding: ". To umożliwia dekodowanie odpowiedzi. Wspiera kodowanie "identity", "deflate", oraz "gzip". JeÅ›li ustawiony ciÄ…g jest pusty, "", wysyÅ‚any jest nagÅ‚ówek zawierajÄ…cy wszystkie obsÅ‚ugiwane typy kodowania. CURLOPT_FTPPORT Wartość która bÄ™dzie użyta do pobrania adresu IP użyta zostanie dla instrukcji FTP "POST" . Instrukcja "POST" mówi zdalnemu serwerowi z jakim okreÅ›lonym adresem IP ma siÄ™ połączyć. ciÄ…g może być zwykÅ‚ym adresem IP , nazwÄ… hosta, nazwÄ… interfejsu sieciowego (pod Unix), lub poprostu zwykÅ‚ym '-' do kożystania z domyÅ›lnego adresu IP. CURLOPT_INTERFACE Nazwa wychodzÄ…cego interfejsu sieciowelub nazwa hasta. CURLOPT_KRB4LEVEL KRB4 (Kerberos 4)poziom zabezpieczeÅ„. Która kolwiek z wystÄ™pujÄ…cych wartoÅ›ci (w kolejnoÅ›ci od najmniej do najbardziej wpÅ‚ywowych) sÄ… ważne: "clear", "safe", "confidential", "private"..JeÅ›li ciÄ…g nie pasuje do jednego z tych, użyty zostanie, "private" . Ustawienie tej opcji na NULL wyłączy zabezpieczenie KRB4 . Bieżące zabezpieczenie KRB4 działą tylko w transakcjach FTP. CURLOPT_POSTFIELDS PeÅ‚ne dane wysÅ‚ane w HTTP "POST". WysyÅ‚a plik, z przedrostkiem @ w nazwie pliku i używa peÅ‚nej Å›ciezki. Może być przesÅ‚any jako ciÄ…g urlencoded taki jak 'para1=val1¶2=val2&...' lub jako tablica z polami nazwy jako klucze i polami danych jako wartoÅ›ci. CURLOPT_PROXY Żądanie HTTP poprzez tunel proxy
CURLOPT_PROXYUSERPWD Nazwa użytkownika i hasÅ‚o sformatowane jako "[username]:[password]" użyte zostanie do połączenia proxy. CURLOPT_RANDOM_FILE Nazwa pliku użyta do wysÅ‚ania losowego numeru generowanego dla SSL. CURLOPT_RANGE Zakres(Zakresy) danych do pobrania w formacie "X-Y" gdzie X lub Y sÄ… opcjonalne. Transfery HTTP również wspierajÄ… klika odstÄ™pów czasu, oddzielonych przecinkami w formacie "X-Y,N-M". CURLOPT_REFERER Tresć nagÅ‚ówka "Referer: " użytego w żądaniu HTTP. CURLOPT_SSL_CIPHER_LIST Lista szyfrów użytych w SSL. Na przykłąd, RC4-SHA i TLSv1 sÄ… ważnÄ… listÄ… szyfrów. CURLOPT_SSLCERT Nazwa pliku łączÄ…cego sformatowany certyfikat PEM. CURLOPT_SSLCERTPASSWD HasÅ‚o wymagane do użycia certyfikatu CURLOPT_SSLCERT. CURLOPT_SSLCERTTYPE Format certyfikatu. Wspieranymi formatami sÄ… "PEM" (domyÅ›lny), "DER", i "ENG". CURLOPT_SSLENGINE Indentyfikator silnika kryptograficznego SSL okreÅ›lonego prywatnym kluczem w CURLOPT_SSLKEY. CURLOPT_SSLENGINE_DEFAULT Indentyfikator dla silnika kryptograficznego użytego dla asymetrycznej operacji kryptografiznej CURLOPT_SSLKEY Nazwa pliku zawierajcego prywatny klucz SSL CURLOPT_SSLKEYPASSWD Tajne hasÅ‚o potrzebne do użycia prywatnego klucza SSL okreÅ›lonego w CURLOPT_SSLKEY.
CURLOPT_SSLKEYTYPE Typ prywatnego klucza SSL okreÅ›lonego w CURLOPT_SSLKEY. Wspieranymi typami klucz sÄ… "PEM" (domyÅ›lnie), "DER", i "ENG". CURLOPT_URL Sprowadza URL. Może to być również ustawione podczas inicjowania sesji zcurl_init().CURLOPT_USERAGENT Treść nagÅ‚ówka "User-Agent: " użytego w żądaniu HTTP. CURLOPT_USERPWD nazwa uzytkownika i hasÅ‚o w formacie "[username]:[password]" do użycia podczas połączenia.
value powinien być tablicÄ… dla nastÄ™pujÄ…cych wartoÅ›ci z opcji parametru:Opcja Ustaw wartość CURLOPT_HTTP200ALIASES Tablica odpowiedzi HTTP 200 bÄ™dzie traktowana jako ważna odpowiedź a nie jako błąd. CURLOPT_HTTPHEADER Tablica pól nagÅ‚ówków HTTP do ustawienia CURLOPT_POSTQUOTE Tablica poleceÅ„ FTP do wykonania na serwerze przed wykonaniem żądania FTP CURLOPT_QUOTE Tablica poleceÅ„ FTP do wykonania na serwerze przed żądaniem FTP
value powinna być strumieniem zasobów (za pomocÄ… fopen (), na przykÅ‚ad) dla nastÄ™pujÄ…cych wartoÅ›ci z opcji parametru:Opcja Ustaw wartość CURLOPT_FILE Plik którego transfer powinien być wypisany. DomyÅ›lnie jest STDOUT (okno przeglÄ…darki). CURLOPT_INFILE Plik którego transfer powinien być odczytany podczas wysyÅ‚ania CURLOPT_STDERR Alternatywna lokalizacja wyjÅ›cia dla błędów zamiast do STDERR. CURLOPT_WRITEHEADER Plik gdzie zapisywana jest część transferu nagÅ‚ówka
value Powinna być ciÄ…giem nazw i wartoÅ›ci zwróconych funkcji dla the nastÄ™pujÄ…cych wartoÅ›ci parametrów opcji:Opcje Ustaw wartość CURLOPT_HEADERFUNCTION Nazwa wywoÅ‚anej funkcji, wezwana funkcja pobiera dwa parametry. Pierwszym jest źródÅ‚o cURL a drugim ciÄ…g znaków z danych w nagÅ‚ówku. Dane nagÅ‚ówka muszÄ… być wypisane kiedy korzystasz z wywoÅ‚anej funkcji. Zwraca liczbÄ™ wypisanych bajtów CURLOPT_PASSWDFUNCTION Nazwa wywolanej funkcji , gdzie wywoÅ‚ana funkcja pobiera try parametry . Pierwszym jest źródÅ‚o cURL, drugim ciÄ…g znaków zawierajÄ…cy hasÅ‚o , i trzecim maksymalna dÅ‚ugość hasÅ‚a. Zrwaca ciÄ…g zawierajÄ…cy hasÅ‚o. CURLOPT_READFUNCTION Nazwa wywoÅ‚anej funkcji, wezwana funkcja pobiera dwa parametry. Pierwszym jest źródÅ‚o cURL a drugim ciÄ…g znaków z danych którem majÄ… zostać odczytane. Dane muszÄ… być odczytane przez wywoÅ‚anÄ… funkcjÄ™. Zwraca odczytanÄ… liczbÄ™ bajtów. Zwraca 0 dla sygnaÅ‚ul EOF. CURLOPT_WRITEFUNCTION Nazwa wywoÅ‚anej funkcji, wezwana funkcja pobiera dwa parametry. Pierwszym jest źródÅ‚o cURL a drugim ciÄ…g znaków z danymi do zapisu. Dane muszÄ… być zapisane przez wywoÅ‚anÄ… funkcjÄ™. Musi zwrócić dokÅ‚adnÄ… liczbÄ™ zapisanych bajtów.
Zwracane wartości
Zwraca TRUE w przypadku powodzenia, FALSE w przypadku błędu.
Listing
//Example #1 Inicjalizowanie nowej sesji cURL i
pobieranie strony internetowej
<?php
// Tworzymy nowe źródło cURL
$ch = curl_init();
// ustawiamy odpowiedni adres URL i inne opcje
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, false);
// pobiera URL i przekazuje go do przeglÄ…darki
curl_exec($ch);
//zamekamy wszystkie uchwyty i uwalniamy zasoby
curl_close($ch);
?>
//Example #2 Przesyłanie pliku
<?php
/* http://localhost/upload.php:
print_r($_POST);
print_r($_FILES);
*/
$ch = curl_init();
$data = array('name' => 'Foo', 'file' => '@/home/user/test.png');
curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
?>
//Powyższy przykład wyświetli:
Array
(
[name] => Foo
)|>
Array
(
[file] => Array
(
[name] => test.png
[type] => image/png
[tmp_name] => /tmp/phpcpjNeQ
[error] => 0
[size] => 279
)
)
Ranga: Administrator serwisu Punktów: 28716

