<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/features.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'tr',
  ),
  'this' => 
  array (
    0 => 'features.connection-handling.php',
    1 => 'Bağlantı y&ouml;netimi',
    2 => 'Bağlantı y&ouml;netimi',
  ),
  'up' => 
  array (
    0 => 'features.php',
    1 => '&Ouml;zellikler',
  ),
  'prev' => 
  array (
    0 => 'features.remote-files.php',
    1 => 'Uzak dosyaların kullanımı',
  ),
  'next' => 
  array (
    0 => 'features.persistent-connections.php',
    1 => 'Kalıcı Bağlantılı Veritabanı Bağlantıları',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'tr',
    'path' => 'features/connection-handling.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="features.connection-handling" class="chapter">
  <h1 class="title">Bağlantı yönetimi</h1>


  <p class="para">
    PHP içinde yerleşik olarak bağlantı durumu saklanır. Olası 4 durum vardır:
   <ul class="itemizedlist">
    <li class="listitem"><span class="simpara">0 - NORMAL</span></li>
    <li class="listitem"><span class="simpara">1 - ABORTED</span></li>
    <li class="listitem"><span class="simpara">2 - TIMEOUT</span></li>
    <li class="listitem"><span class="simpara">3 - ABORTED ve TIMEOUT</span></li>
   </ul>
  </p>

  <p class="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ı
    (<span class="function"><a href="function.set-time-limit.php" class="function">set_time_limit()</a></span> işlevine bakınız) tetiklendiyse,
    TIMEOUT durumu etkin olur.
</p>

  <p class="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 <a href="misc.configuration.php#ini.ignore-user-abort" class="link"><code class="code">ignore_user_abort</code></a> <var class="filename">php.ini</var> yönergesi veya ona ilişkin
   <code class="literal">php_value ignore_user_abort</code> Apache <var class="filename">httpd.conf</var>
   yapılandırma yönergesi veya <span class="function"><a href="function.ignore-user-abort.php" class="function">ignore_user_abort()</a></span> işlevi ile
   belirlenebilir. Eğer PHP&#039;ye kullanıcı iptallerini gözardı etmesini
   söylemezseniz ve kullanıcı iptal ederse betiğiniz sonlanır. Tek istisnası
   <span class="function"><a href="function.register-shutdown-function.php" class="function">register_shutdown_function()</a></span> 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
   <span class="function"><a href="function.connection-aborted.php" class="function">connection_aborted()</a></span> işlevini kullanabilirsiniz. Eğer
   bağlantı iptal edilirse bu işlev <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> döndürecektir.
  </p>

  <p class="simpara">
    Betiğinizi yerleşik betik zamanlayıcı ile de sonlandırabilirsiniz.
    Öntanımlı zaman aşımı 30 saniyedir. Bu <a href="info.configuration.php#ini.max-execution-time" class="link"><code class="code">max_execution_time</code></a>
    <var class="filename">php.ini</var> yönergesi veya ilişkili <code class="literal">php_value
    max_execution_time</code> Apache <var class="filename">httpd.conf</var> yapılandırma yönergesi veya
    <span class="function"><a href="function.set-time-limit.php" class="function">set_time_limit()</a></span> 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 <span class="function"><a href="function.connection-status.php" class="function">connection_status()</a></span> 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.
  </p>

  <p class="simpara">
    ABORTED ve TIMEOUT durumlarının aynı zamanda etkin olabileceğine dikkat
    edilmesi gerekir. Eğer PHP&#039;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  <span class="function"><a href="function.connection-status.php" class="function">connection_status()</a></span> işlevinin 3 döndürdüğünü
    göreceksiniz.
  </p>
 </div>
<?php manual_footer($setup); ?>