<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/language.references.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'tr',
  ),
  'this' => 
  array (
    0 => 'language.references.return.php',
    1 => 'G&ouml;nderimle D&ouml;nd&uuml;rme',
    2 => 'G&ouml;nderimle D&ouml;nd&uuml;rme',
  ),
  'up' => 
  array (
    0 => 'language.references.php',
    1 => 'G&ouml;nderimlerle İlgili Herşey',
  ),
  'prev' => 
  array (
    0 => 'language.references.pass.php',
    1 => 'G&ouml;nderimle Aktarım',
  ),
  'next' => 
  array (
    0 => 'language.references.unset.php',
    1 => 'G&ouml;nderimi Tanımsız Yapmak',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'tr',
    'path' => 'language/references.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="language.references.return" class="sect1">
   <h2 class="title">Gönderimle Döndürme</h2>
   <p class="para">
    Gönderimle döndürme, gönderimin bağlayacağı değişkeni hedefleyen bir
    işlev kullanmak istediğiniz takdirde yararlıdır. Gönderimle döndürmeyi
    başarımı arttırmak amacıyla kullanmayın. Motor, bunu kendine göre en
    iyileyecek yeteneğe sahiptir. Sadece geçerli bir teknik sebebiniz
    olduğunda gönderimle döndürme yapın! Gönderimle döndürmek için şu söz
    dizimi kullanılır:
    <div class="informalexample">
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">class </span><span style="color: #0000BB">sınıf<br /></span><span style="color: #007700">{<br />    public </span><span style="color: #0000BB">$değer </span><span style="color: #007700">= </span><span style="color: #0000BB">42</span><span style="color: #007700">;<br /><br />    public function &amp;</span><span style="color: #0000BB">değeriBağla</span><span style="color: #007700">()<br />    {<br />        return </span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">değer</span><span style="color: #007700">;<br />    }<br />}<br /><br /></span><span style="color: #0000BB">$obj </span><span style="color: #007700">= new </span><span style="color: #0000BB">sınıf</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$değerim </span><span style="color: #007700">= &amp;</span><span style="color: #0000BB">$obj</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">değeriBağla</span><span style="color: #007700">(); </span><span style="color: #FF8000">// $değerim, $obj-&gt;değer için bir gönderimdir<br /></span><span style="color: #007700">echo </span><span style="color: #0000BB">$değerim</span><span style="color: #007700">;                   </span><span style="color: #FF8000">// 42 basar<br /></span><span style="color: #0000BB">$obj</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">değer </span><span style="color: #007700">= </span><span style="color: #0000BB">2</span><span style="color: #007700">;<br />echo </span><span style="color: #0000BB">$değerim</span><span style="color: #007700">;                   </span><span style="color: #FF8000">// 2 basar<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>
    Bu örnekte, <var class="varname">değeriBağla</var> işlevi ile döndürülen nesne
    özelliği değişkene atanmaktadır, eğer gönderim söz dizimi kullanılmamış
    olsaydı özelliğin kendisi değil bir kopyası atanmış olacaktı.
   </p>
   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
     Bağımsız değişken aktarmanın tersine, burada her iki taraftada (çağıran ve
     çağrılan) <code class="literal">&amp;</code> kullanımı zorunludur. Çağıran tarafta
     <code class="literal">$değerim</code> değişkenine yapılanın bir atama değil
     gönderim bağlantısı olduğunu, çağrılan tarafta ise yapılanın sıradan bir
     değer kopyalama değil bir gönderimle döndürme olduğunu belirtmektedir.
    </span>
   </p></blockquote>
   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
      <code class="literal">return ($this-&gt;değer);</code> söz dizimi ile bir işlevden
      bir gönderim döndürmek isterseniz bir değişkeni değil de bir ifadenin
      sonucunu döndürmeye çalışmış olacağınızdan bu istediğinizi
      yapmayacaktır. Bir işlevden gönderimle sadece değişkenleri
      döndürebilirsiniz, başka bir şey döndüremezsiniz.
    </span>
   </p></blockquote>
   <p class="para">
    Dönen gönderim kullanmak için, gönderim ataması yapmanız gerekir:
    <div class="informalexample">
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">function &amp;</span><span style="color: #0000BB">collector</span><span style="color: #007700">()<br />{<br />  static </span><span style="color: #0000BB">$collection </span><span style="color: #007700">= array();<br />  return </span><span style="color: #0000BB">$collection</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">$collection </span><span style="color: #007700">= &amp;</span><span style="color: #0000BB">collector</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$collection</span><span style="color: #007700">[] = </span><span style="color: #DD0000">'foo'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>
    Dönen gönderimi bir gönderim umarak başka bir işleve aktarmak için bu
    sözdizimini kullanabilirsiniz:
    <div class="informalexample">
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">function &amp;</span><span style="color: #0000BB">collector</span><span style="color: #007700">()<br />{<br />  static </span><span style="color: #0000BB">$collection </span><span style="color: #007700">= array();<br />  return </span><span style="color: #0000BB">$collection</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">array_push</span><span style="color: #007700">(</span><span style="color: #0000BB">collector</span><span style="color: #007700">(), </span><span style="color: #DD0000">'foo'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>
   </p>
   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
      <code class="literal">array_push(&amp;collector(), &#039;foo&#039;);</code> ifadesinin
      çalış<em>MA</em>yacağına, ölümcül hatayla sonuçlanacağına
      dikkat edin.
    </span>
   </p></blockquote>
  </div><?php manual_footer($setup); ?>