cvs: phpdoc /pl/features connection-handling.xml
| From: | Leszek Krupinski | Date: | Fri, 02 Nov 2001 22:58:46 +0000 |
| Subject: | cvs: phpdoc /pl/features connection-handling.xml | ||
| Groups: | php.doc | ||
| Request: | Send a blank email to phpdoc+get-969338463@lists.php.net to get a copy of this message | ||
leszek Fri Nov 2 17:58:46 2001 EDT
Added files:
/phpdoc/pl/features connection-handling.xml
Log:
Finished translation
Index: phpdoc/pl/features/connection-handling.xml
+++ phpdoc/pl/features/connection-handling.xml
<?xml encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<chapter id="features.connection-handling">
<title>Obs³uga po³±czeñ</title>
<note>
<para>Ten rozdzia³ dotyczy wersji 3.0.7 i pó¼niejszych.</para>
</note>
<para>
PHP wewnêtrznie zarz±dza stanem po³±czenia. Mog± wyst±piæ
trzy stany:
<itemizedlist>
<listitem><simpara>0 - NORMAL</simpara></listitem>
<listitem><simpara>1 - ABORTED (przerwany)</simpara></listitem>
<listitem><simpara>2 - TIMEOUT (przekroczony czas)</simpara></listitem>
</itemizedlist>
</para>
<simpara>
Kiedy skrypt PHP siê wykonuje, aktywny jest stan NORMAL.
Je¶li klient siê roz³±czy, stan przechodzi w ABORTED.
Zwykle ma to miejsce gdy u¿ytkownik naci¶nie przycisk STOP w
przegl±darce. Je¶li przekroczony zostanie narzucony limit czasu
(patrz <function>set_time_limit</function>), stan zmienia siê
na TIMEOUT.
</simpara>
<simpara>
Mo¿esz zdecydowaæ czy po roz³±czeniu klienta praca skryptu ma zostaæ
przerwana. Czasem przydatne jest by skrypty dzia³a³y do koñca, nawet
gdy braknie przegl±darki do której mo¿na wysy³aæ dane. Domy¶lnie,
po roz³±czeniu siê klienta, dzia³anie skryptu jest przerywane. To
zachowanie mo¿na zmieniæ dziêki opcji ignore_user_abort w php.ini, jak
równie¿ dyrektywie Apache php3_ignore_user_abort lub funkcji
<function>ignore_user_abort</function>. Je¶li nie ka¿esz PHP ignorowaæ
roz³±czeñ klienta, a klient roz³±czy siê, skrypt zakoñczy dzia³anie.
Jedyny wyj±tek wyst±pi, je¶li zarejestrujesz funkcjê zamykaj±c±, u¿ywaj±c
<function>register_shutdown_function</function>. Wtedy, gdy u¿ytkownik
wci¶nie przycisk STOP i przy kolejnej próbie wys³ania wyniku PHP
wykryje przerwanie po³±czenia, zostanie wykonana funkcja zamykaj±ca.
Bêdzie ona równie¿ wywo³ywana przy normalnym zakoñczeniu pracy skryptu,
zatem, by wykonaæ inne czynno¶ci gdy klient siê roz³±czy, mo¿na
u¿yæ funkcji <function>connection_aborted</function>. Zwraca ona
&true; je¶li po³±czenie zosta³o przerwane.
</simpara>
<simpara>
Skrypt mo¿e zostaæ równie¿ zakoñczony przez wbudowany licznik czasu.
Domy¶lnie czas ten wynosi 30 sekund. Warto¶æ tê mo¿na zmieniæ
u¿ywaj±c opcji max_execution_time w php.ini, jak równie¿ dyrektywy
Apache php3_max_execution_time lub funkcji
<function>set_time_limit</function>. Kiedy czas na wykonanie siê
skoñczy, skrypt zostanie przerwany podobnie jak w przypadku roz³±czenia
siê klienta (patrz wy¿ej). Je¶li funkcja zamykaj±ca by³a zarejestrowana,
zostanie wywo³ana. Wewn±trz funkcji zamykaj±cej mo¿esz sprawdziæ czy
zosta³a ona wywo³ana wskutek przekroczenia czasu. Do tego celu u¿yj
funkcji <function>connection_timeout</function>, która zwróci &true;
je¶li to przekroczenie limitu czasu spowodowa³o wywo³anie funkcji
zamykaj±cej.
<simpara>
Nale¿y zwróciæ uwagê, ¿e stany ABORTED i TIMEOUT mog± byæ aktywne
jednocze¶nie. Jest to mo¿liwe, je¶li ka¿esz PHP ignorowaæ roz³±czenia
klienta. PHP bêdzie bra³o pod uwagê fakt, ¿e po³±czenie z klientem
mog³o zostaæ zerwane, ale skrypt bêdzie pracowa³ dalej. Gdy minie czas
przeznaczony na wykonanie skryptu, zostanie on przerwany i uruchomiona
zostanie funkcja zamykaj±ca (je¶li by³a ustawiona). W tym momencie funkcje
<function>connection_timeout</function> i
<function>connection_aborted</function> bêd± zwraca³y &true;. Mo¿esz
tak¿e sprawdziæ oba stany przy pomocy funkcji
<function>connection_status</function>. Zwróci ona aktywne stany
ustawione bitowo. Dla przyk³adu, je¶li oba stany s± aktywne, zostanie
zwrócona liczba 3.
</chapter>
<!-- 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
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->