File: curl.xml

package info (click to toggle)
phpdoc 20020310-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 35,272 kB
  • ctags: 354
  • sloc: xml: 799,767; php: 1,395; cpp: 500; makefile: 200; sh: 140; awk: 51
file content (476 lines) | stat: -rw-r--r-- 16,691 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
<?xml version="1.0" encoding="iso-8859-2"?>
 <reference id="ref.curl">
  <title>Funkce pro prci s CURL, Client URL Library </title>
  <titleabbrev>CURL</titleabbrev>

  <partintro id="curl.partintro">
   <para>
    PHP podporuje libcurl, knihovnu vytvoenou Danielem Stenbergem, kter
    umouje spojen a komunikaci s mnoha rznmi typy server v mnoha rznch
    typech protokol. libcurl v souasn dob podporuje http, https, ftp, gopher,
    telnet, dict, file a ldap protokoly. libcurl tak podporuje HTTPS certifikty,
    HTTP POST, HTTP PUT, FTP uploady (toto umouje i ftp extenze PHP), HTTP
    formulov uploady, proxy, cookies a user+password autentikaci.
   </para>
   <para>
    Pokud chcete pouvat CURL funkce, muste nainstalovat <ulink
    url="&url.curl;">CURL</ulink>. PHP vyaduje pouit CURL 7.0.2-beta nebo
    vy. S verzemi CURL starmi ne 7.0.2-beta PHP nebude pracovat.
   </para>
   <para>
    Dle muste PHP zkompilovat s <option
    role="configure">--with-curl[=DIR]</option>, kde DIR je umstn adrese
    obsahujcho lib a include adrese. V "include" adresi by ml bt adres
    pojmenovan "curl", kter by ml obsahovat soubory easy.h and curl.h. V
    adresi "lib" by ml bt soubor pojmenovan "libcurl.a".
   </para>
   <para>
    Tyto funkce byly pidny v PHP 4.0.2.
   </para>
   <para>
    Pokud mte PHP zkompilovan s podporou CURL, mete zat pouvat CURL
    funkce. Zkladn principem tchto funkc je, e pomoc
    <function>curl_init</function> inicializujete CURL session, potom pomoc
    <function>curl_exec</function> nastavte hodnoty penosu a nakonec session
    zavete pomoc <function>curl_close</function>. Nsleduje ukzka, kter
    vyuva CURL funkce ke staen homepage PHP do souboru:
    <example>
     <title>Pouit CURL extenze ke staen homepage PHP</title>
     <programlisting role="php">
&lt;?php

$ch = curl_init ("http://www.php.net/");
$fp = fopen ("php_homepage.txt", "w");

curl_setopt ($ch, CURLOPT_FILE, $fp);
curl_setopt ($ch, CURLOPT_HEADER, 0);

curl_exec ($ch);
curl_close ($ch);
fclose ($fp);
?>
     </programlisting>
    </example>
   </para>
  </partintro>

  <refentry id="function.curl-init">
   <refnamediv>
    <refname>curl_init</refname>
    <refpurpose>Inicializovat CURL session</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
     <methodsynopsis>
      <type>int</type><methodname>curl_init</methodname>
      <methodparam choice="opt"><type>string</type><parameter>url</parameter></methodparam>
     </methodsynopsis>
    <para>
     <function>curl_init</function> inicializuje novou session a vrac CURL handle
     pro pouit s funkcemi <function>curl_setopt</function>,
     <function>curl_exec</function> a <function>curl_close</function>. Pokud je
     ptomen voliteln argument <parameter>url</parameter>, CURLOPT_URL se nastav
     na hodnotu tohoto argumentu. Mete to udlat i run, pomoc funkce
     <function>curl_setopt</function>.
     <example>
      <title>
       Inicializace nov CURL session a staen webov strnky
      </title>
      <programlisting role="php">
&lt;?php
$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, "http://www.zend.com/");
curl_setopt ($ch, CURLOPT_HEADER, 0);

curl_exec ($ch);

curl_close ($ch);
?>
      </programlisting>
     </example>
    </para>
    <para>
     Viz tak: <function>curl_close</function>,
     <function>curl_setopt</function>
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.curl-setopt">
   <refnamediv>
    <refname>curl_setopt</refname>
    <refpurpose>Nastavit parametr CURL transferu</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
     <methodsynopsis>
      <type>bool</type><methodname>curl_setopt</methodname>
      <methodparam><type>int</type><parameter>ch</parameter></methodparam>
      <methodparam><type>string</type><parameter>option</parameter></methodparam>
      <methodparam><type>mixed</type><parameter>value</parameter></methodparam>
     </methodsynopsis>
    <para>
     <function>curl_setopt</function> nastavuje parametry CURL session
     <parameter>ch</parameter>. <parameter>option</parameter> je parametr, kter
     chcete nastavit a <parameter>value</parameter> je hodnota, na kterou se m
     <parameter>option</parameter> nastavit.
    </para>
    <para>
     Argument <parameter>value</parameter> by ml u nsledujcch hodnot
     argumentu <parameter>option</parameter> obsahovat integer:
     <itemizedlist>
      <listitem>
       <simpara>
        <parameter>CURLOPT_INFILESIZE</parameter>: Tento parametr by ml u
        upload obsahovat velikost uploadovanho souboru.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_VERBOSE</parameter>: Pokud chcete, aby CURL podvala
        zprvy o vem co se dje, nastavte tento parametr na nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_HEADER</parameter>: Pokud chcete, aby vstup obsahoval
        hlaviky, nastavte tento parametr na nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <para>
    	<parameter>CURLOPT_NOPROGRESS</parameter>: Pokud PHP nem zobrazit midlo
	    postupu CURL transferu, nastavte tento parametr na nenulovou hodnotu.
        <note>
         <simpara>
          PHP tento parametr automaticky nastavuje na nenulovou hodnotu, zmna
          je vhodn pouze pro ely ladn.
         </simpara>
        </note>
       </para>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_NOBODY</parameter>: Pokud nechete, aby bylo ve vstupu
        zahrnuto tlo vstupu, nastavte tento parametr na nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_FAILONERROR</parameter>: Pokud m PHP tie ukonit
        transfer po pijet HTTP server kdu vtho ne 300, nastavte tento
        parametr na nenulovou hodnotu. Defaultn chovn je ignorovat nvratov
        kd a normln vrtit strnku.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_UPLOAD</parameter>: Pokud chcete PHP pipravit na
        upload, nastavte tento parametr na nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_POST</parameter>: Pokud chcete, aby PHP provedl
        bn HTTP POST poadavek, nastavte tento parametr na nenulovou hodnotu.
        Jedn se o bn application/x-www-from-urlencoded POST poadavek, kter
        se vtinou pouv u HTML formul.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_FTPLISTONLY</parameter>: Pokud chcete, aby PHP
        vypsalo nzvy soubor v FTP adresi, nastavte tento parametr na
        nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_FTPAPPEND</parameter>: Pokud chcete, aby PHP msto
        pepsn vzdlenho souboru pipojilo upload k jeho obsahu, nastavte
        tento parametr na nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_NETRC</parameter>: Pokud m PHP ve vaem
        ~./netrc souboru hledat vae uivatelsk jmno a heslo pro server ke
        ktermu se pipojujete.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_FOLLOWLOCATION</parameter>: Pokud m PHP provdt
        pesmrovn u ppadnch "Location: " hlaviek vrcench serverem.
        (Pozn.: rekurzivn, PHP provede pesmrovn pro vechny "Location: "
        hlaviky, kter pijme.)
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_PUT</parameter>: Pokud chcete uploadovat soubor pomoc
        HTTP metody PUT, nastavte tento parametr na nenulovou hodnotu. Uploadovan
        soubor mus bt uren parametry CURLOPT_INFILE a CURLOPT_INFILESIZE.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_MUTE</parameter>: Pokud m bt PHP naprosto tich
        ohledn CURL funkc, nastavte tento parametr na nenulovou hodnotu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_TIMEOUT</parameter>: Integer urujc maximln as
        ve vteinch, kter mohou CURL funkce zabrat.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_LOW_SPEED_LIMIT</parameter>: Integer urujc minimln
        rychlost penosu v bytech za sekundu. Pokud rychlost penosu klesne pod
        tento limit po dobu CURLOPT_LOW_SPEED_TIME sekund, PHP ukon transfer.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_LOW_SPEED_TIME</parameter>: Integer urujc as ve
        vteinch. Pokud rychlost penosu klesne na tuto dobu pod
        CURLOPT_LOW_SPEED_LIMIT, PHP zru transfer.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_RESUME_FROM</parameter>: Integer urujc offset v
        bytech, na kterm m transfer zat.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_SSLVERSION</parameter>: Integer urujc, jak verze
        SSL (2 nebo 3) se m pout. Defaultn se PHP pokus urit verzi samo,
        ale v nkterch ppadech je nutno verzi urit manuln.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_TIMECONDITION</parameter>: Definujc chovn
        CURLOPT_TIMEVALUE. Tento parametr me nabt bu hodnoty
        TIMECOND_IFMODSINCE nebo TIMECOND_ISUNMODSINCE. Funguje pouze u HTTP
        penos.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_TIMEVALUE</parameter>: Integer urujc poet vtein
        od 1. ledna 1970. Tento as se pouije podle intervalu CURLOPT_TIMEVALUE,
        default je pouit TIMECOND_IFMODSINCE.
       </simpara>
      </listitem>
     </itemizedlist>
    </para>
    <para>
     Argument <parameter>value</parameter> by ml u nsledujcch hodnot
     argumentu <parameter>option</parameter> obsahovat etzec:
     <itemizedlist>
      <listitem>
       <simpara>
        <parameter>CURLOPT_URL</parameter>: Toto je URL, kterou m PHP sthnout.
        Tento parametr mete tak nastavit pi inicializaci CURL session pomoc
        funkce <function>curl_init</function>.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_USERPWD</parameter>: etzec ve tvaru
        [username]:[password] pro pouit pi spojen.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_PROXYUSERPWD</parameter>: etzec ve tvaru
        [username]:[password] pro pouit pi spojen s HTTP proxy.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_RANGE</parameter>: Pass the specified range
        you want.  It should be in the "X-Y" format, where X or Y may
        be left out.  The HTTP transfers also support several
        intervals, seperated with commas as in X-Y,N-M.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_POSTFIELDS</parameter>: etzec obsahujc kompletn
        data, kter se maj odeslat v HTTP POST poadavku.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_REFERER</parameter>: etzec obsahujc "referer"
        hlaviku pro pouit v HTTP poadavku.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_USERAGENT</parameter>: etzec obsahujc "user-agent"
        hlaviku pro pouit v HTTP poadavku.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_FTPPORT</parameter>: etzec, na jeho zklad se zsk
        IP adresa pro FTP "POST" instrukci. POST instrukce k serveru, aby se
        pipojil na danou IP adresu. Tento etzec me obsahovat IP adresu,
        hostname, a network interface name (under UNIX) nebo '-' (pouije se
        defaultn IP adresa systmu).
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_COOKIE</parameter>: etzec obsahujc cookie, kter
        se m poslat v HTTP hlavice tohoto penosu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_SSLCERT</parameter>: etzec obsahujc nzev souboru
        PEM certifiktu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_SSLCERTPASSWD</parameter>: etzec obsahujc heslo
        vyadovan pro pouit CURLOPT_SSLCERT certifiktu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_COOKIEFILE</parameter>: etzec obsahujc nzev
        souboru obsahujcho cookie data. Cookie soubor me bt bu v Netscape
        formtu nebo obsahovat HTTP hlaviky.
       </simpara>
      </listitem>
      <listitem>
       <para>
        <parameter>CURLOPT_CUSTOMREQUEST</parameter>: etzec, kter se m v
        HTTP poadavku pout msto GET nebo HEAD. Toto je uiten pi DELETE
        i jinch, obskurnjch HTTP poadavcch.
        <note>
         <simpara>
          Pouvejte pouze v ppad, e v server tento pkaz podporuje.
         </simpara>
        </note>
       </para>
      </listitem>
     </itemizedlist>
    </para>
    <para>
     Nsledujc parametry oekvaj deskriptor vrcen funkc
     <function>fopen</function>:
     <itemizedlist>
      <listitem>
       <simpara>
        <parameter>CURLOPT_FILE</parameter>: Soubor, do kterho se m umstit
        vstup CURL transferu. Default je STDOUT.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_INFILE</parameter>: Soubor, kter obsahuje vstup
        CURL transferu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_WRITEHEADER</parameter>: Soubor, do kterho se maj
        zapsat hlaviky vstupu.
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        <parameter>CURLOPT_STDERR</parameter>: Soubor, do kterho se maj
        zapisovat chyby msto na STDERR.
       </simpara>
      </listitem>
     </itemizedlist>
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.curl-exec">
   <refnamediv>
    <refname>curl_exec</refname>
    <refpurpose>Provst CURL session</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
     <methodsynopsis>
      <type>bool</type><methodname>curl_exec</methodname>
      <methodparam><type>int</type><parameter>ch</parameter></methodparam>
     </methodsynopsis>
    <para>
     Tuto funkci byste mli zavolat po inicializaci CURL session a nastaven
     vech jejch parametr. Jejm elem je provst peddefinovanou CURL
     session (urenou argumentem <parameter>ch</parameter>).
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.curl-close">
   <refnamediv>
    <refname>curl_close</refname>
    <refpurpose>Zavt CURL session</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
     <methodsynopsis>
      <type>void</type><methodname>curl_close</methodname>
      <methodparam><type>int</type><parameter>ch</parameter></methodparam>
     </methodsynopsis>
    <para>
     Tato funkce zave CURL session a uvoln vechny zdroje. CURL handle,
     <parameter>ch</parameter>, se tak smae.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.curl-version">
   <refnamediv>
    <refname>curl_version</refname>
    <refpurpose>Vrtit verzi CURL</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
     <methodsynopsis>
      <type>string</type><methodname>curl_version</methodname>
      <void/>
     </methodsynopsis>
    <para>
     <function>curl_version</function> vrac etzec obsahujc pouitou verzi
     CURL.
    </para>
   </refsect1>
  </refentry>
 </reference>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->