mirror of
https://github.com/php/doc-tr.git
synced 2026-03-23 23:02:09 +01:00
93 lines
4.3 KiB
XML
93 lines
4.3 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- $Revision$ -->
|
||
<!-- EN-Revision: dc0f955be2a10b707ae06f7da69f52fab24df3d1 Maintainer: yasar Status: ready -->
|
||
<!-- CREDITS: dirt -->
|
||
<chapter xml:id="features.connection-handling" xmlns="http://docbook.org/ns/docbook">
|
||
<title>Bağlantı yönetimi</title>
|
||
|
||
<para>
|
||
PHP içinde yerleşik olarak bağlantı durumu saklanır. Olası 4 durum vardır:
|
||
<itemizedlist>
|
||
<listitem><simpara>0 - NORMAL</simpara></listitem>
|
||
<listitem><simpara>1 - ABORTED</simpara></listitem>
|
||
<listitem><simpara>2 - TIMEOUT</simpara></listitem>
|
||
<listitem><simpara>3 - ABORTED ve TIMEOUT</simpara></listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
|
||
<simpara>
|
||
PHP betiği normal olarak çalıştığında, NORMAL durumu etkindir.
|
||
Eğer uzak istemci bağlantıyı keserse ABORTED durumu etkin olur.
|
||
Uzak istemci bağlantı kesilmesi genellikle kullanıcının DUR düğmesine
|
||
basmasından kaynaklanır. Eğer PHP tarafından bir zaman sınırı
|
||
(<function>set_time_limit</function> işlevine bakınız) tetiklendiyse,
|
||
TIMEOUT durumu etkin olur.
|
||
</simpara>
|
||
|
||
<simpara>
|
||
Kullanıcının bağlantı kesmesiyle betiğinizin iptal edilip edilmeyeceğine
|
||
karar verebilirsiniz. Bazen uzak tarayıcı çıktıyı almasa da betiğinizin
|
||
işini bitirinceye kadar çalışmasını gerektiren durumlar olabilir. Öntanımlı
|
||
davranış uzak istemci bağlantıyı kestiğinde betik çalışmasının iptal
|
||
edilmesidir. Bu davranış şekli <link linkend="ini.ignore-user-abort"
|
||
><code>ignore_user_abort</code></link> &php.ini; yönergesi veya ona ilişkin
|
||
<literal>php_value ignore_user_abort</literal> Apache &httpd.conf;
|
||
yapılandırma yönergesi veya <function>ignore_user_abort</function> işlevi ile
|
||
belirlenebilir. Eğer PHP'ye kullanıcı iptallerini gözardı etmesini
|
||
söylemezseniz ve kullanıcı iptal ederse betiğiniz sonlanır. Tek istisnası
|
||
<function>register_shutdown_function</function> işleviyle kapatma işlevinin
|
||
kayıtlanmasıdır. Bir kapatma işlevi ile, uzak kullanıcı DUR düğmesine
|
||
bastığında, betiğinizin sonraki çıktılama denemesinde PHP bağlantının iptal
|
||
edildiğini tespit eder ve kapatma işlevi çağrılır. Bu kapatma işlevi ayrıca
|
||
normal olarak sonlandırmada betiğinizin sonunda çağrılacaktır, istemci
|
||
tarafından bağlantı iptalinde farklı birşey yapmak için
|
||
<function>connection_aborted</function> işlevini kullanabilirsiniz. Eğer
|
||
bağlantı iptal edilirse bu işlev &true; döndürecektir.
|
||
</simpara>
|
||
|
||
<simpara>
|
||
Betiğinizi yerleşik betik zamanlayıcı ile de sonlandırabilirsiniz.
|
||
Öntanımlı zaman aşımı 30 saniyedir. Bu <link
|
||
linkend="ini.max-execution-time"><code>max_execution_time</code></link>
|
||
&php.ini; yönergesi veya ilişkili <literal>php_value
|
||
max_execution_time</literal> Apache &httpd.conf; yapılandırma yönergesi veya
|
||
<function>set_time_limit</function> işlevi ile değiştirilebilir. Zaman
|
||
aşımında betik iptal edilir ve yukarıdaki istemci bağlantı kesilmesindeki
|
||
gibi, eğer kayıtlı bir kapatma işlevi varsa çağrılır. Bu kapatma işlevi
|
||
içinde <function>connection_status</function> işlevi ile kapatma işlevinin
|
||
zaman aşımı nedeniyle mi çağrıldığını denetleyebilirsiniz. Kapatma
|
||
işlevinin çağrılmasına zaman aşımı neden olduysa bu işlev 2 döndürür.
|
||
</simpara>
|
||
|
||
<simpara>
|
||
ABORTED ve TIMEOUT durumlarının aynı zamanda etkin olabileceğine dikkat
|
||
edilmesi gerekir. Eğer PHP'ye kullanıcı iptallerini gözardı etmesini
|
||
söylediyseniz bu mümkündür. PHP kullanıcının bağlantıyı koparmış
|
||
olabileceğini bilir, fakat betik çalışmaya devam eder. Eğer zaman sınırına
|
||
ulaşırsa çalışması iptal edilir ve kapatma işleviniz varsa çağrılır. Bu
|
||
noktada <function>connection_status</function> işlevinin 3 döndürdüğünü
|
||
göreceksiniz.
|
||
</simpara>
|
||
</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
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"~/.phpdoc/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
|
||
-->
|