cvs: phpdoc /pl/features connection-handling.xml

From: 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 -->

« previous php.doc (#969338463) next »