[MANUAL] English:
[zend.git] / documentation / manual / pl / module_specs / Zend_Uri.xml
blob6ea9f0d94e21b47155a3ff5b86a975e5472814e8
1 <sect1 id="zend.uri.chapter">
2   <title>Zend_Uri</title>
4   <sect2 id="zend.uri.overview">
5     <title>Wstęp</title>
7     <para>
8       <code>Zend_Uri</code> jest komponentem, który pomaga w manipulowaniu i
9       sprawdzaniu poprawności adresem
10       <ulink url="http://www.w3.org/Addressing/">Uniform Resource Identifier</ulink>
11       (URI). Klasa <code>Zend_Uri</code> istnieje głownie aby obsłużyć inne
12       komponenty takie jak na przykład <code>Zend_Http_Client</code> ale także
13       jest użyteczna jako osobne narzędzie.
14     </para>
16     <para>
17       Adresy URI zawsze zaczynają się nazwą schematu zakończoną średnikiem.
18       Konstrukcje różnych schematów różnią się od siebie znacząco. Klasa
19       <code>Zend_Uri</code> zapewnia fabrykę, która zwracą swoją podklasę
20       specjalizującą się w danym schemacie. Podklasa będzie nazwana
21       <code>Zend_Uri_&lt;scheme&gt;</code>, gdzie
22       <code>&lt;scheme&gt;</code> jest nazwą schematu zamienioną na małe litery
23       z pierwszą literą zamienioną na wielką. Wyjątkiem od tej reguły jest
24       schemat HTTPS, który także jest obsługiwany przez klasę
25       <code>Zend_Uri_Http</code>.
26     </para>
27   </sect2>
29   <sect2 id="zend.uri.creation">
30     <title>Tworzenie nowego URI</title>
32     <para>
33       <code>Zend_Uri</code> zbuduje nowy URI z szablonu jeśli do metody
34       <code>Zend_Uri::factory()</code> przekazana jest tylko nazwa schematu.
35     </para>
37     <example id="zend.uri.creation.example-1">
38       <title>Tworzenie nowego URI za pomocą <code>Zend_Uri::factory()</code></title>
40       <programlisting role="php"><![CDATA[
41 // Aby utworzyć URI z szablonu, przekaż tylko schemat.
42 $uri = Zend_Uri::factory('http');
44 // $uri jest instancją Zend_Uri_Http
45 ]]>
46         </programlisting>
47     </example>
49     <para>
50       Aby utworzyć nowy URI z szablonu, przekaż tylko nazwę schematu do metody
51       <code>Zend_Uri::factory()</code><footnote><para>Obecnie, Zend_Uri
52       obsługuje tylko schematy HTTP oraz HTTPS.</para></footnote>. Jeśli
53       przekazana jest nazwa nieobsługiwanego schematu, wyrzucony będzie
54       wyjątek <code>Zend_Uri_Exception</code>.
55     </para>
57     <para>
58       Jeśli schemat lub przekazany URI jest obsługiwany, metoda
59       <code>Zend_Uri::factory()</code> zwróci swoją podklasę, która specjalizuje
60       się w schemacie który ma zostać utworzony.
61     </para>
62   </sect2>
64   <sect2 id="zend.uri.manipulation">
65     <title>Manipulowanie istniejącym URI</title>
67     <para>
68       Aby manipulować istniejącym URI, przekaż cały URI do
69       <code>Zend_Uri::factory()</code>.
70     </para>
72     <example id="zend.uri.manipulation.example-1">
73       <title>Manipulowanie istniejącym URI za pomocą <code>Zend_Uri::factory()</code></title>
75     <programlisting role="php"><![CDATA[
76 // Aby manipulować istniejącym URI, przekaż go do metody fabryki.
77 $uri = Zend_Uri::factory('http://www.zend.com');
79 // $uri jest instancją Zend_Uri_Http
80 ]]>
81         </programlisting>
82     </example>
84     <para>
85       URI zostanie przetworzony i zostanie sprawdzona jego poprawność. Jeśli
86       okaże się, że jest niepoprawny, od razu zostanie wyrzucony wyjątek
87       <code>Zend_Uri_Exception</code>. W przeciwnym wypadku, metoda
88       <code>Zend_Uri::factory()</code> zwróci swoją podklasę specjalizującą
89       się w schemacie URI, którym chcemy manipulować.
90     </para>
91   </sect2>
93   <sect2 id="zend.uri.validation">
94     <title>Sprawdzanie poprawności URI</title>
96     <para>
97       Funkcja <code>Zend_Uri::check()</code> może być użyta jeśli potrzebne
98       jest tylko sprawdzenie poprawności istniejącego URI.
99     </para>
101     <example id="zend.uri.validation.example-1">
102       <title>Sprawdzanie poprawności URI za pomocą <code>Zend_Uri::check()</code></title>
104     <programlisting role="php"><![CDATA[
105 // Sprawdź czy podany URI ma poprawny format
106 $valid = Zend_Uri::check('http://uri.in.question');
108 // $valid ma wartość TRUE dla poprawnego URI, lub FALSE w przeciwnym wypadku.
110     </programlisting>
111     </example>
113     <para>
114       <code>Zend_Uri::check()</code> zwraca wartość logiczną, co jest bardziej
115       wygodne niż używanie <code>Zend_Uri::factory()</code> i wyłapywanie
116       wyjątku.
117     </para>
118   </sect2>
120   <sect2 id="zend.uri.instance-methods">
121     <title>Wspólne metody instancji</title>
123     <para>
124       Każda instancja podklasy <code>Zend_Uri</code> (np.
125       <code>Zend_Uri_Http</code>) ma kilka metod, ktore są użyteczne do pracy
126       z rożnego rodzaju URI.
127     </para>
129     <sect3 id="zend.uri.instance-methods.getscheme">
130       <title>Pobieranie schematu URI</title>
132       <para>
133         Nazwa schematu URI jest częścią URI, która znajduje się przed dwukropkiem. Na przykład
134         nazwą schematu adresu <code>http://www.zend.com</code> jest <code>http</code>.
135       </para>
137       <example id="zend.uri.instance-methods.getscheme.example-1">
138         <title>Pobieranie schematu z obiektu <code>Zend_Uri_*</code></title>
140         <programlisting role="php"><![CDATA[
141 $uri = Zend_Uri::factory('http://www.zend.com');
143 $scheme = $uri->getScheme();  // "http"
145         </programlisting>
146     </example>
148       <para>
149         Metoda <code>getScheme()</code> zwraca tylko schemat z obiektu URI.
151       </para>
153     </sect3>
155     <sect3 id="zend.uri.instance-methods.geturi">
156       <title>Pobieranie całego URI</title>
158       <example id="zend.uri.instance-methods.geturi.example-1">
159         <title>Pobieranie całego URI z obiektu <code>Zend_Uri_*</code></title>
161         <programlisting role="php"><![CDATA[
162 $uri = Zend_Uri::factory('http://www.zend.com');
164 echo $uri->getUri();  // "http://www.zend.com"
166           </programlisting>
167       </example>
169       <para>
170         Metoda <code>getUri()</code> zwraca reprezentację całego URI jako
171         łańcuch znaków.
172       </para>
173     </sect3>
175     <sect3 id="zend.uri.instance-methods.valid">
176       <title>Sprawdzanie poprawności URI</title>
178       <para>
179         <code>Zend_Uri::factory()</code> zawsze sprawdzi poprawność przekazanego
180         do niej URI i nie utworzy nowej instancji podklasy <code>Zend_Uri</code>
181         jeśli podany adres URI jest niepoprawny. Jakkolwiek, po tym jak zostanie
182         utworzona instancja podklasy <code>Zend_Uri</code> dla nowego URI lub
183         dla poprawnego istniejącego, możliwe jest to, że URI później może stać
184         się niepoprawny, po tym jak będziemy nim manipulować.
185       </para>
187       <example id="zend.uri.instance-methods.valid.example-1">
188         <title>Sprawdzanie poprawności obiektu <code>Zend_Uri_*</code></title>
190         <programlisting role="php"><![CDATA[
191 $uri = Zend_Uri::factory('http://www.zend.com');
193 $isValid = $uri->valid();  // TRUE
195           </programlisting>
196       </example>
198       <para>
199         Metoda <code>valid()</code> zapewnia możliwość sprawdzenia czy obiekt
200         URI jest wciąż poprawny.
201       </para>
202     </sect3>
204   </sect2>
205 </sect1>