1
0
mirror of https://github.com/php/doc-tr.git synced 2026-03-23 23:02:09 +01:00
Files
archived-doc-tr/features/connection-handling.xml
2021-01-12 01:55:27 +03:00

93 lines
4.3 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?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
ı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
-->