<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/language.types.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'tr',
  ),
  'this' => 
  array (
    0 => 'language.types.string.php',
    1 => 'string',
    2 => 'string',
  ),
  'up' => 
  array (
    0 => 'language.types.php',
    1 => 'T&uuml;rler',
  ),
  'prev' => 
  array (
    0 => 'language.types.float.php',
    1 => 'float',
  ),
  'next' => 
  array (
    0 => 'language.types.numeric-strings.php',
    1 => 'Sayısal Dizeler',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'tr',
    'path' => 'language/types/string.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="language.types.string" class="sect1">
 <h2 class="title">string</h2>
 <p class="para">
  Bir dize <span class="type"><a href="language.types.string.php" class="type string">string</a></span> türünde bir sayıl değer olup bir dizi
  tek baytlık karakterden oluşur. Yani, olası karakter sayısı 256&#039;dan
  ibarettir. Bu yüzden PHP Unicode için yerleşik desteğe sahip olamıyor.
  <a href="language.types.string.php#language.types.string.details" class="link">Dize türünün ayrıntıları</a>
  belgesine bakınız.
 </p>

 <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
  <span class="simpara">
   32 bitlik derlemelerde, dize uzunluğu en fazla 2GB (2147483647 bayt)
   olabilir.
  </span>
 </p></blockquote>

 <div class="sect2" id="language.types.string.syntax">
  <h3 class="title">Sözdizimi</h3>

  <p class="para">
   <span class="type"><a href="language.types.string.php" class="type string">string</a></span> türünde bir sayıl dört şekilde belirtilebilir:
  </p>

  <ul class="itemizedlist">
   <li class="listitem">
    <span class="simpara">
     <a href="language.types.string.php#language.types.string.syntax.single" class="link">tek tırnaklı dize
     </a>
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     <a href="language.types.string.php#language.types.string.syntax.double" class="link">çift tırnaklı dize
     </a>
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     <a href="language.types.string.php#language.types.string.syntax.heredoc" class="link">yorumlu metin
     </a> (heredoc)
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     <a href="language.types.string.php#language.types.string.syntax.nowdoc" class="link">yorumsuz metin
     </a> (nowdoc)
    </span>
   </li>
  </ul>

  <div class="sect3" id="language.types.string.syntax.single">
   <h4 class="title">Tek tırnaklı dizeler</h4>

   <p class="para">
    Bir dizeyi belirtmenin en basit yolu dizeyi tek tırnak
    (<code class="literal">&#039;</code>) imlerinin arasına almaktır.
   </p>

   <p class="para">
    Tek tırnaklı bir dize içinde tek tırnağı sayıl değeriyle kullanmak
    isterseniz önüne bir tersbölü imi getirmelisiniz (<code class="literal">\</code>).
    Bir tersbölü imini sayıl değeriyle kullanmak isterseniz onun da önüne bir
    tersbölü imi getirmelisiniz (<code class="literal">\\</code>). Tersbölü imini
    bunlardan başka bir karakterin önünde kullanırsanız, tersbölü imi
    karakterle birlikte basılır. <code class="literal">\r</code> veya
    <code class="literal">\n</code> gibi özel anlamı olan öncelemeler özel anlamı yoksayılarak olduğu gibi basılır.
   </p>

   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
     <a href="language.types.string.php#language.types.string.syntax.double" class="link">çift tırnak</a> ve
     <a href="language.types.string.php#language.types.string.syntax.heredoc" class="link">yorumlu metin</a>
     sözdizimlerinin aksine, <a href="language.variables.php" class="link">değişkenler</a>
     ve özel karakterlerin öncelemleri tek tırnaklı dizelerin içinde
     kullanıldıklarında yorumlanmazlar.
    </span>
   </p></blockquote>

   <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">echo </span><span style="color: #DD0000">'Bu basit bir dizedir'</span><span style="color: #007700">;<br /><br />echo </span><span style="color: #DD0000">'Dizgelerin içinde satırsonu karakterlerini<br />tıpkı buradaki gibi<br />kullanabilirsiniz'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çıktısı: Arnold dedi ki: "I'll be back"<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">'Arnold dedi ki: "I\'ll be back"'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çıktısı: You deleted C:\*.*?<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">'You deleted C:\\*.*?'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çıktısı: You deleted C:\*.*?<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">'You deleted C:\*.*?'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çıktısı: This will not expand: \n a newline<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">'This will not expand: \n a newline'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çıktısı: Variables do not $expand $either<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">'Variables do not $expand $either'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>

  </div>

  <div class="sect3" id="language.types.string.syntax.double">
   <h4 class="title">Çift tırnaklı dizeler</h4>

   <p class="para">
    Eğer bir dize çift tırnak (&quot;) içine alınmışsa PHP, aşağıdaki özel
    karakter öncelemlerini yorumlayacaktır:
   </p>

   <table class="doctable table">
    <caption><strong>Tersbölü ile öncelenmiş karakterler</strong></caption>

    
     <thead>
      <tr>
       <th>Öncelem</th>
       <th>Anlamı</th>
      </tr>

     </thead>


     <tbody class="tbody">
      <tr>
       <td><code class="literal">\n</code></td>
       <td>satırsonu (LF veya ASCII 10 (0x0A))</td>
      </tr>

      <tr>
       <td><code class="literal">\r</code></td>
       <td>satırbaşı (CR veya ASCII 13 (0x0D))</td>
      </tr>

      <tr>
       <td><code class="literal">\t</code></td>
       <td>yatay sekme (HT veya ASCII 9 (0x09))</td>
      </tr>

      <tr>
       <td><code class="literal">\v</code></td>
       <td>düşey sekme (VT veya ASCII 11 (0x0B))</td>
      </tr>

      <tr>
       <td><code class="literal">\e</code></td>
       <td>escape (ESC veya ASCII 27 (0x1B)</td>
      </tr>

      <tr>
       <td><code class="literal">\f</code></td>
       <td>sayfa ileri (FF veya ASCII 12 (0x0C))</td>
      </tr>

      <tr>
       <td><code class="literal">\\</code></td>
       <td>tersbölü</td>
      </tr>

      <tr>
       <td><code class="literal">\$</code></td>
       <td>dolar imi</td>
      </tr>

      <tr>
       <td><code class="literal">\&quot;</code></td>
       <td>çift tırnak</td>
      </tr>

      <tr>
       <td><code class="literal">\[0-7]{1,3}</code></td>
       <td>
        Sekizlik: Bu düzenli ifade ile eşleşen dizilim, karakterin sekizlik
        gösterimi (örn, <code class="literal">&quot;\101&quot; === &quot;A&quot;</code>) olup bir bayta
        sığmak için sessizce taşar (örn, <code class="literal">&quot;\400&quot; === &quot;\000&quot;</code>).
       </td>
      </tr>

      <tr>
       <td><code class="literal">\x[0-9A-Fa-f]{1,2}</code></td>
       <td>
        Onaltılık: Bu düzenli ifade ile eşleşen dizilim, karakterin onaltılık
        gösterimidir (örn, <code class="literal">&quot;\x41&quot; === &quot;A&quot;</code>).
       </td>
      </tr>

      <tr>
       <td><code class="literal">\u{[0-9A-Fa-f]+}</code></td>
       <td>
        Unicode: Bu düzenli ifade ile eşleşen dizilim bir Unicode karakter
        kodu olup, dizeye karakter kodunun UTF-8 gösterimini çıktılar.
        Kod kaşlı ayraçlarla sarmalanmalıdır
        (örn, <code class="literal">&quot;\u{41}&quot; === &quot;A&quot;</code>).
       </td>
      </tr>

     </tbody>
    
   </table>


   <p class="para">
    Tersbölü imini bunlardan başka bir karakterin önünde kullanırsanız,
    tersbölü imi karakterle birlikte basılır.
   </p>

   <p class="para">
    Çift tırnaklı dizelerin en önemli özelliği içerdiği değişkenlerin
    yorumlanmasıdır. Bu konuda daha ayrıntılı bilgi edinmek için <a href="language.types.string.php#language.types.string.parsing" class="link">Değişken çözümleme</a>
    bölümüne bakınız.
   </p>
  </div>

  <div class="sect3" id="language.types.string.syntax.heredoc">
   <h4 class="title">Yorumlu metinler</h4>

   <p class="simpara">
    Bir dizenin sınırlarını belirlemenin üçüncü yolu, <em>yorumlu
    metin</em> sözdizimidir. Bir yorumlu metin daima
    <code class="literal">&lt;&lt;&lt;</code> karakterleri ile başlar ve hemen ardından
    bir betimleyici ve bir satırsonu karakteri gelir. Asıl dize satırsonu
    karakterinden sonra yer alır. Dizgenin sonunu belirtmek üzere dizenin
    sonuna, baştaki betimleyici konur.
   </p>

   <p class="simpara">
    Kapanış betimleyicisinin dizeden sonraki satırın başında olması
    gerekmez. Boşluk veya sekme karakterleriyle girintilenebilir. Bu durumda
    girinti miktarı dizedeki tüm satırlardan ayıklanır. PHP 7.3.0 öncesinde
    kapanış betimleyicisinin satırın başında olması
    <em>gerekirdi</em>.
   </p>

   <p class="simpara">
    Ayrıca, betimleyici PHP&#039;deki diğer isimlere uygulanan kurallara uygun
    olmalıdır: Sadece bir harfle veya alt çizgi imi ile başlayabilir; sadece
    harfler, rakamlar veya alt çizgi imleri içerebilir.
   </p>
   <div class="example" id="example-1">
    <p><strong>Örnek 1 - PHP 7.3.0 ve sonrası için Yorumlu Metin örneği</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// girintisiz<br /></span><span style="color: #007700">echo &lt;&lt;&lt;END<br /></span><span style="color: #DD0000">      a<br />     b<br />    c<br />\n<br /></span><span style="color: #007700">END;<br /><br /></span><span style="color: #FF8000">// 4 boşluk girintili<br /></span><span style="color: #007700">echo &lt;&lt;&lt;END<br /></span><span style="color: #DD0000">      a<br />     b<br />    c<br /></span><span style="color: #007700">    END;</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin PHP 7.3 çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
      a
     b
    c

  a
 b
c
</pre></div>
    </div>
   </div>

   <p class="simpara">
    Kapanış betimleyicisi, dizedeki tüm satırlardan daha uzun girintilenmişse
    <span class="classname"><a href="class.parseerror.php" class="classname">ParseError</a></span> istisnası yavrulanır:
   </p>

   <div class="example" id="example-2">
    <p><strong>Örnek 2 - Kapanış betimleyicisi, dizedeki tüm satırlardan daha uzun girintilenmemeli</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">echo &lt;&lt;&lt;END<br /></span><span style="color: #DD0000">  a<br /> b<br />c<br /></span><span style="color: #007700">   END;</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin PHP 7.3 çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
PHP Parse error:  Invalid body indentation level (expecting an indentation level of at least 3) in example.php on line 4
</pre></div>
    </div>
   </div>

   <p class="simpara">
    Kapanış betimleyicisi ve metin girintilenirken sekmeler kullanılabilir,
    ancak sekmeler ve boşluklar birlikte kullanılmamalıdır. Böyle bir durumda
    <span class="classname"><a href="class.parseerror.php" class="classname">ParseError</a></span> istisnası yavrulanır. Girinti için
    sekmeleri ve boşlukları karıştırmak okunabilirliğe zararlı olduğundan bu
    kısıtlamaya gidilmiştir.
   </p>

   <div class="example" id="example-3">
    <p><strong>Örnek 3 - Kapanış betimleyicisin girintilenirken sekmeler ve boşluklar
     birlikte kullanılmamalı</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// Aşağıdaki kod çalışmaz.<br /><br />// Metin boşluklarla kapanış betimleyici sekmelerle girintilenmiş<br /></span><span style="color: #007700">{<br />       echo &lt;&lt;&lt;END<br /></span><span style="color: #DD0000">        a<br /></span><span style="color: #007700">               END;<br />}<br /><br /></span><span style="color: #FF8000">// Metinde boşluk ve sekmelerin karışık kullanımı<br /></span><span style="color: #007700">{<br />    echo &lt;&lt;&lt;END<br /></span><span style="color: #DD0000">       a<br /></span><span style="color: #007700">     END;<br />}<br /><br /></span><span style="color: #FF8000">// Kapanış betimleyicide boşluk ve sekmelerin karışık kullanımı<br /></span><span style="color: #007700">{<br />       echo &lt;&lt;&lt;END<br /></span><span style="color: #DD0000">                 a<br /></span><span style="color: #007700">                END;<br />}</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin PHP 7.3 çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
PHP Parse error:  Invalid indentation - tabs and spaces cannot be mixed in example.php line 8
</pre></div>
    </div>
   </div>

   <p class="simpara">
    Kapanış betimleyicisinin noktalı virgül ve satırsonu ile sonlandırılması
    gerekmez. Örneğin PHP 7.3.0 ve sonrasında aşağıdaki gibi bir kod çalışır:
   </p>

   <div class="example" id="example-4">
    <p><strong>Örnek 4 - Kapanış betimleyicisinden sonra devam eden ifade</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$values </span><span style="color: #007700">= [&lt;&lt;&lt;END<br /></span><span style="color: #DD0000">a<br />  b<br />    c<br /></span><span style="color: #007700">END, </span><span style="color: #DD0000">'d e f'</span><span style="color: #007700">];<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$values</span><span style="color: #007700">);</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin PHP 7.3 çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
array(2) {
  [0] =&gt;
  string(11) &quot;a
  b
    c&quot;
  [1] =&gt;
  string(5) &quot;d e f&quot;
}
</pre></div>
    </div>
   </div>

   <div class="warning"><strong class="warning">Uyarı</strong>
    <p class="simpara">
     Kapanış betimleyicisi satırın hemen başındaysa başka bir sözcüğün parçası
     olup olmadığında bakılmaksızın kapanış betimleyici olarak ele alınır ve
     <span class="classname"><a href="class.parseerror.php" class="classname">ParseError</a></span> istisnasına sebep olur.
    </p>

    <div class="example" id="example-5">
     <p><strong>Örnek 5 - Metin içindeki kapanış betimleyici dizesi ParseError yavrulatır</strong></p>
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$values </span><span style="color: #007700">= [&lt;&lt;&lt;END<br /></span><span style="color: #DD0000">a<br />b<br /></span><span style="color: #007700">END </span><span style="color: #0000BB">ING<br />END</span><span style="color: #007700">, </span><span style="color: #DD0000">'d e f'</span><span style="color: #007700">];</span></span></code></div>
     </div>

     <div class="example-contents"><p>
Yukarıdaki örneğin PHP 7.3 çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
PHP Parse error:  syntax error, unexpected identifier &quot;ING&quot;, expecting &quot;]&quot; in example.php on line 6
</pre></div>
     </div>
    </div>

    <p class="simpara">
     Bu sorundan kaçınmak için basit bir kurala uymak yeterlidir:
     <em>betimleyiciyi metin gövdesi içinde görünenlerden seçme.</em>.
    </p>
   </div>

   <div class="warning"><strong class="warning">Uyarı</strong>
    <p class="simpara">
     PHP 7.3.0 öncesinde, kapanış betimleyicisinin bulunduğu satırda
     betimleyicinin hemen ardına konan <em>muhtemel</em> bir
     noktalı virgül (<code class="literal">;</code>) dışında hiçbir karakter
     bulunmaması çok önemli olup buna özellikle dikkat etmelisiniz. Yani,
     betimleyici özellikle <em>girintilenmemeli</em>; noktalı
     virgülden önce ve sonra herhangi bir boşluk karakteri bulunmamalıdır.
     Ayrıca, kapanış betimleyicisinden hemen önce gelen karakterin yerel
     işletim sistemine özgü satırsonu karakteri olması çok önemlidir.
     Bu karakter Unix ve macOS için <code class="literal">\n</code>&#039;dir. Kapanış
     betimleyicisinden (ve olası noktalı virgül karakterinden) sonraki
     karakter de böyle bir satırsonu karakteri olmalıdır.
    </p>

    <p class="simpara">
     Eğer bu kurallara uyulmaz ve kapanış betimleyicisinin etrafı temiz
     tutulmazsa kapanış betimleyicisi algılanamayacağından PHP kapanış
     betimleyicisini aramaya devam edecektir. Eğer dosyanın sonuna kadar
     uygun bir kapanış betimleyicisi bulunamazsa son satırda bir çözümleme
     hatası oluşacaktır.
    </p>

    <p class="para">
     Yorumlu metinler sınıf özelliklerini ilklendirmek için kullanılamazlar.
     PHP 5.3&#039;ten beri bu sınırlama sadece değişken içeren yorumlu metinler
     için geçerlidir. Bunun yerine
     <a href="language.types.string.php#language.types.string.syntax.nowdoc" class="link">yorumsuz metinler
     </a>kullanılabilir.
    </p>

    <div class="example" id="example-6">
     <p><strong>Örnek 6 - PHP 7.3.0 öncesi için geçersiz örnek</strong></p>
     <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">foo </span><span style="color: #007700">{<br />    public </span><span style="color: #0000BB">$bar </span><span style="color: #007700">= &lt;&lt;&lt;EOT<br /></span><span style="color: #DD0000">bar<br /></span><span style="color: #007700">    EOT;<br />}<br /></span><span style="color: #FF8000">// Betimleyici girintilenmez<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>
    <div class="example" id="example-7">
     <p><strong>Örnek 7 -  PHP 7.3.0 öncesi için bile geçerli örnek</strong></p>
     <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">foo </span><span style="color: #007700">{<br />    public </span><span style="color: #0000BB">$bar </span><span style="color: #007700">= &lt;&lt;&lt;EOT<br /></span><span style="color: #DD0000">bar<br /></span><span style="color: #007700">EOT;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>

    <p class="para">
     Değişken içeren yorumlu  metinler sınıf özelliklerini ilklendirmek için
     kullanılamaz.
    </p>
   </div>

   <p class="para">
    Yorumlu metinler tıpkı çift tırnaklı dizeler gibi davranırlar. Yorumlu
    metin çift tırnaklar arasına alınmaz ve metin içindeki çift tırnak
    imlerinin tersbölü ile öncelenmesi gerekmez, ancak yukarıda çift tırnaklı
    dizeler için belirtilen öncelem kodları kullanılabilir. Değişkenler
    yorumlanır, fakat yorumlanan metin içinde yer alan karmaşık değişkenler
    ifade edilirken dizelerde dikkate alınması gerekenler yorumlu metinlerde
    de dikkate alınmalıdır.
   </p>

   <div class="example" id="example-8">
    <p><strong>Örnek 8 - Yorumlu metin örneği</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$str </span><span style="color: #007700">= &lt;&lt;&lt;EOD<br /></span><span style="color: #DD0000">Yorumlu metin sözdizimi<br />kullanılarak çok sayıda<br />satıra bölünmüş dize örneği.<br /></span><span style="color: #007700">EOD;<br /><br /></span><span style="color: #FF8000">/* Değişkenlerin de kullanıldığı daha karmaşık bir örnek */<br /></span><span style="color: #007700">class </span><span style="color: #0000BB">foo<br /></span><span style="color: #007700">{<br />    var </span><span style="color: #0000BB">$foo</span><span style="color: #007700">;<br />    var </span><span style="color: #0000BB">$bar</span><span style="color: #007700">;<br /><br />    function </span><span style="color: #0000BB">__construct</span><span style="color: #007700">()<br />    {<br />        </span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">foo </span><span style="color: #007700">= </span><span style="color: #DD0000">'Foo'</span><span style="color: #007700">;<br />        </span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">bar </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'Bar1'</span><span style="color: #007700">, </span><span style="color: #DD0000">'Bar2'</span><span style="color: #007700">, </span><span style="color: #DD0000">'Bar3'</span><span style="color: #007700">);<br />    }<br />}<br /><br /></span><span style="color: #0000BB">$foo </span><span style="color: #007700">= new </span><span style="color: #0000BB">foo</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$name </span><span style="color: #007700">= </span><span style="color: #DD0000">'Kimimben'</span><span style="color: #007700">;<br /><br />echo &lt;&lt;&lt;EOT<br /></span><span style="color: #DD0000">Adım "</span><span style="color: #0000BB">$name</span><span style="color: #DD0000">" ve işim </span><span style="color: #0000BB">$foo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">foo</span><span style="color: #DD0000"> basmak.<br />Şimdi </span><span style="color: #007700">{</span><span style="color: #0000BB">$foo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">bar</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">]}</span><span style="color: #DD0000"> basıyorum.<br />Bu büyük 'A' basmalı: \x41\n<br /></span><span style="color: #007700">EOT;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
Adım &quot;Kimimben&quot; ve işim Foo basmak.
Şimdi Bar2 basıyorum.
Bu büyük &#039;A&#039; basmalı: A</pre></div>
    </div>
   </div>

   <p class="para">
    Ayrıca işlev bağımsız değişkeninde veri aktarırken de yorumlu metin
    kullanılabilir:
   </p>

   <div class="example" id="example-9">
    <p><strong>Örnek 9 - Bağımsız değişkenlerde yorumlu metin kullanımı</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />var_dump</span><span style="color: #007700">(array(&lt;&lt;&lt;EOD<br /></span><span style="color: #DD0000">foobar!<br /></span><span style="color: #007700">EOD<br />));<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>

   <p class="para">
    Statik değişkenleri ve sınıf özelliklerini veya
    sabitlerini yorumlu metin sözdizimini kullanarak ilklendirmek mümkündür:
   </p>

   <div class="example" id="example-10">
    <p><strong>Örnek 10 - Statik değer olarak yorumlu metin kullanımı</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// Statik değişkenler<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">foo</span><span style="color: #007700">()<br />{<br />  static </span><span style="color: #0000BB">$bar </span><span style="color: #007700">= &lt;&lt;&lt;LABEL<br /></span><span style="color: #DD0000">Burada  hiçbir şey yok...<br /></span><span style="color: #007700">LABEL;<br />}<br /><br /></span><span style="color: #FF8000">// Sınıf özellikleri ve sabitleri<br /></span><span style="color: #007700">class </span><span style="color: #0000BB">foo<br /></span><span style="color: #007700">{<br />  const </span><span style="color: #0000BB">BAR </span><span style="color: #007700">= &lt;&lt;&lt;FOOBAR<br /></span><span style="color: #DD0000">Sınıf sabiti örneği<br /></span><span style="color: #007700">FOOBAR;<br /><br />  public </span><span style="color: #0000BB">$baz </span><span style="color: #007700">= &lt;&lt;&lt;FOOBAR<br /></span><span style="color: #DD0000">Özellik örneği<br /></span><span style="color: #007700">FOOBAR;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>

   <p class="para">
    Yorumlu metinlerin açılış betimleyicisi
    seçimlik olarak çift tırnaklarla kapatılabilir:
   </p>

   <div class="example" id="example-11">
    <p><strong>Örnek 11 - Yorumlu metin bildiriminde çift tırnak kullanımı</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">echo &lt;&lt;&lt;"TIRNAKLI"<br /></span><span style="color: #DD0000">Merhaba Dünya!<br /></span><span style="color: #007700">TIRNAKLI;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>

  </div>

  <div class="sect3" id="language.types.string.syntax.nowdoc">
   <h4 class="title">Yorumsuz metinler</h4>

   <p class="para">
    Yorumlu metinlerin çift tırnaklı dizelere karşılık gelmesi gibi yorumsuz
    metinler de tek tırnaklı dizelere karşılık gelir. Yorumsuz metinler de
    yorumlular gibi belirtilir ama, <em>yorumsuz metin içinde çözümleme
    yapılmaz</em>. Yorumsuz metinler, PHP kodlarını veya büyük metin
    bloklarını herhangi bir önlem almaksızın içine yerleştirmek için
    elverişlidirler. Belirtilen metin bloğunun çözümlenmemesinden dolayı
    SGML&#039;nin <code class="literal">&lt;![CDATA[ ]]&gt;</code> oluşumu ile benzer
    özelliklere sahiptir.
   </p>

   <p class="para">
    Yorumsuz metin de yorumlu metindeki <code class="literal">&lt;&lt;&lt;</code>
    dizesini kullanır fakat betimleyicisi tek tırnak içine alınır; yani,
    şuna benzer: <code class="literal">&lt;&lt;&lt;&#039;EOT&#039;</code>. Yorumlu metin için
    geçerli tüm diğer kurallar yorumsuz metin için de geçerlidir; özellikle
    de kapanış betimleyici ile ilgili olanlar.
   </p>

   <div class="example" id="example-12">
    <p><strong>Örnek 12 - Yorumsuz metin örneği</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$str </span><span style="color: #007700">= &lt;&lt;&lt;'EOD'<br /></span><span style="color: #DD0000">Yorumlu metin sözdizimi kullanılarak çok sayıda satıra bölünmüş<br />dize örneği. Tersbölüler daima birebir ele alınır,<br />örn, \\ and \'<br /></span><span style="color: #007700">EOD;</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
Yorumlu metin sözdizimi kullanılarak çok sayıda satıra bölünmüş
dize örneği. Tersbölüler daima birebir ele alınır,
örn, \\ and \&#039;
</pre></div>
    </div>
   </div>

   <div class="example" id="example-13">
    <p><strong>Örnek 13 - Değişkenli yorumsuz metin örneği</strong></p>
    <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">foo<br /></span><span style="color: #007700">{<br />    public </span><span style="color: #0000BB">$foo</span><span style="color: #007700">;<br />    public </span><span style="color: #0000BB">$bar</span><span style="color: #007700">;<br /><br />    function </span><span style="color: #0000BB">__construct</span><span style="color: #007700">()<br />    {<br />        </span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">foo </span><span style="color: #007700">= </span><span style="color: #DD0000">'Foo'</span><span style="color: #007700">;<br />        </span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">bar </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'Bar1'</span><span style="color: #007700">, </span><span style="color: #DD0000">'Bar2'</span><span style="color: #007700">, </span><span style="color: #DD0000">'Bar3'</span><span style="color: #007700">);<br />    }<br />}<br /><br /></span><span style="color: #0000BB">$foo </span><span style="color: #007700">= new </span><span style="color: #0000BB">foo</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$name </span><span style="color: #007700">= </span><span style="color: #DD0000">'Kimimben'</span><span style="color: #007700">;<br /><br />echo &lt;&lt;&lt;'EOT'<br /></span><span style="color: #DD0000">İsmim "$name" ve işim $foo-&gt;foo basmak.<br />Artık {$foo-&gt;bar[1]} basıyorum.<br />Bu büyük 'A' basmalı: \x41<br /></span><span style="color: #007700">EOT;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
İsmim &quot;$name&quot; ve işim $foo-&gt;foo basmak.
Artık {$foo-&gt;bar[1]} basıyorum.
Bu büyük &#039;A&#039; basmalı: \x41</pre></div>
    </div>
   </div>

   <div class="example" id="example-14">
    <p><strong>Örnek 14 - Statik veri örneği</strong></p>
    <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">foo </span><span style="color: #007700">{<br />    public </span><span style="color: #0000BB">$bar </span><span style="color: #007700">= &lt;&lt;&lt;'EOT'<br /></span><span style="color: #DD0000">bar<br /></span><span style="color: #007700">EOT;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </div>

  <div class="sect3" id="language.types.string.parsing">
   <h4 class="title">Değişken çözümleme</h4>

   <p class="simpara">
    Bir dize çift tırnaklar arasında veya  bir yorumlu metin olarak
    belirtilmişse içindeki <a href="language.variables.php" class="link">değişkenler</a> çözümlenir.
   </p>

   <p class="simpara">
    İki sözdizimi türü vardır: Biri <a href="language.types.string.php#language.types.string.parsing.simple" class="link">basit</a>, diğeri <a href="language.types.string.php#language.types.string.parsing.complex" class="link">karmaşık</a>. Basit
    sözdizimi en çok kullanılanı ve elverişli olanıdır; bir değişken, bir
    dizi değeri veya bir nesne özelliğini bir dize içinde en az çabayla
    kullanmayı sağlar.
   </p>

   <p class="simpara">
    Karmaşık sözdizimi ifadeyi sarmalayan kaşlı ayraçlar biçiminde kendini
    gösterir.
   </p>

   <div class="sect4" id="language.types.string.parsing.simple">
    <h5 class="title">Basit Sözdizimi</h5>

    <p class="simpara">
     Çözümleyici, bir dolar imine (<code class="literal">$</code>) rastlandığında,
     geçerli bir değişken ismi oluşturmak için alabildiği bütün dizecikleri
     açgözlülükle toplar. Değişken isminin kaşlı ayraçlar arasına alınması
     ismin sonunun açıkça belirtilmesini sağlar.
    </p>

    <div class="informalexample">
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$juice </span><span style="color: #007700">= </span><span style="color: #DD0000">"apple"</span><span style="color: #007700">;<br /><br />echo </span><span style="color: #DD0000">"He drank some </span><span style="color: #0000BB">$juice</span><span style="color: #DD0000"> juice."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// "s" değişken ismi olarak geçerli karakterdir fakat, $juice değişkendir.<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"He drank some juice made of </span><span style="color: #0000BB">$juices</span><span style="color: #DD0000">."</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Kaşlı ayraçların içine alınarak değişken isminin bitimi açıkça belirtilmiş<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"He drank some juice made of </span><span style="color: #007700">${</span><span style="color: #0000BB">juice</span><span style="color: #007700">}</span><span style="color: #DD0000">s."</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

     <p class="para">
Yukarıdaki örneğin çıktısı:</p>
     <div class="example-contents screen">
<div class="cdata"><pre>
He drank some apple juice.
He drank some juice made of .
He drank some juice made of apples.
</pre></div>
     </div>
    </div>

    <p class="simpara">
     Bir dizi indisi veya bir nesne özelliği de benzer şekilde
     çözümlenebilir. Dizi indislerinde indis sonunu, kapayan köşeli ayraç
     (<code class="literal">]</code>) belirler. Aynı kural, basit değişkenler olarak
     nesne özelliklerine de uygulanır.
    </p>

    <div class="example" id="example-15"><p><strong>Örnek 15 - Basit sözdizimi örneği</strong></p>
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$juices </span><span style="color: #007700">= array(</span><span style="color: #DD0000">"apple"</span><span style="color: #007700">, </span><span style="color: #DD0000">"orange"</span><span style="color: #007700">, </span><span style="color: #DD0000">"koolaid1" </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">"purple"</span><span style="color: #007700">);<br /><br />echo </span><span style="color: #DD0000">"He drank some </span><span style="color: #0000BB">$juices</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">]</span><span style="color: #DD0000"> juice."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"He drank some </span><span style="color: #0000BB">$juices</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">]</span><span style="color: #DD0000"> juice."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"He drank some </span><span style="color: #0000BB">$juices</span><span style="color: #007700">[</span><span style="color: #0000BB">koolaid1</span><span style="color: #007700">]</span><span style="color: #DD0000"> juice."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br /><br />class </span><span style="color: #0000BB">people </span><span style="color: #007700">{<br />    public </span><span style="color: #0000BB">$john </span><span style="color: #007700">= </span><span style="color: #DD0000">"John Smith"</span><span style="color: #007700">;<br />    public </span><span style="color: #0000BB">$jane </span><span style="color: #007700">= </span><span style="color: #DD0000">"Jane Smith"</span><span style="color: #007700">;<br />    public </span><span style="color: #0000BB">$robert </span><span style="color: #007700">= </span><span style="color: #DD0000">"Robert Paulsen"</span><span style="color: #007700">;<br /><br />    public </span><span style="color: #0000BB">$smith </span><span style="color: #007700">= </span><span style="color: #DD0000">"Smith"</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">$people </span><span style="color: #007700">= new </span><span style="color: #0000BB">people</span><span style="color: #007700">();<br /><br />echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">john</span><span style="color: #DD0000"> drank some </span><span style="color: #0000BB">$juices</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">]</span><span style="color: #DD0000"> juice."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">john</span><span style="color: #DD0000"> then said hello to </span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">jane</span><span style="color: #DD0000">."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">john</span><span style="color: #DD0000">'s wife greeted </span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">robert</span><span style="color: #DD0000">."</span><span style="color: #007700">.</span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">robert</span><span style="color: #DD0000"> greeted the two </span><span style="color: #0000BB">$people</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">smiths</span><span style="color: #DD0000">."</span><span style="color: #007700">; </span><span style="color: #FF8000">// Won't work<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

     <div class="example-contents"><p>
Yukarıdaki örneğin çıktısı:</p></div>
     <div class="example-contents screen">
<div class="cdata"><pre>
He drank some apple juice.
He drank some orange juice.
He drank some purple juice.
John Smith drank some apple juice.
John Smith then said hello to Jane Smith.
John Smith&#039;s wife greeted Robert Paulsen.
Robert Paulsen greeted the two .
</pre></div>
     </div>
    </div>

    <p class="simpara">
     PHP 7.1.0 ve sonrasında <em>negatif</em> sayısal indisler
     desteklenir.
    </p>

    <div class="example" id="example-16"><p><strong>Örnek 16 - Negatif sayısal indisler</strong></p>
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$string </span><span style="color: #007700">= </span><span style="color: #DD0000">'string'</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"The character at index -2 is </span><span style="color: #0000BB">$string</span><span style="color: #007700">[-</span><span style="color: #0000BB">2</span><span style="color: #007700">]</span><span style="color: #DD0000">."</span><span style="color: #007700">, </span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$string</span><span style="color: #007700">[-</span><span style="color: #0000BB">3</span><span style="color: #007700">] = </span><span style="color: #DD0000">'o'</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"Changing the character at index -3 to o gives </span><span style="color: #0000BB">$string</span><span style="color: #DD0000">."</span><span style="color: #007700">, </span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
      </div>

     <div class="example-contents"><p>
Yukarıdaki örneğin çıktısı:</p></div>
     <div class="example-contents screen">
<div class="cdata"><pre>
The character at index -2 is n.
Changing the character at index -3 to o gives strong.
</pre></div>
     </div>
    </div>

    <p class="simpara">
     Bunlardan daha karmaşık herşey için karmaşık sözdizimini kullanmalısınız.
    </p>
   </div>

   <div class="sect4" id="language.types.string.parsing.complex">
    <h5 class="title">Karmaşık (kaşlı ayraçlı) sözdizimi</h5>

    <p class="simpara">
     Buna karmaşık denmesinin sebebi sözdiziminin karmaşıklığı değil,
     karmaşık ifadelerin kullanımını mümkün kılmasıdır.
    </p>

    <p class="simpara">
     Herhangi bir sayıl değer, dizi elemanı veya nesne özelliği bir dize
     içinde bu sözdizimi ile yer alabilir. İfade dize dışındaki gösterimiyle
     yazılıp <code class="literal">{</code> ve <code class="literal">}</code> arasına alınır.
     <code class="literal">{</code> öncelenemeyeceğinden bu sözdizimi sadece
     <code class="literal">$</code> iminin <code class="literal">{</code> iminin hemen ardında
     yer aldığı durumlarda tanınır. <code class="literal">{\$</code> kullanımı
     <code class="literal">{$</code> imlerinin kendilerinin alınmasıyla sonuçlanır.
     Bazı örnekler:
    </p>

    <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: #FF8000">// Tüm hataları görelim<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ALL</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$şahane </span><span style="color: #007700">= </span><span style="color: #DD0000">'harika'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışmaz, çıktısı: Bu çok { harika}<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu çok { </span><span style="color: #0000BB">$şahane</span><span style="color: #DD0000">}"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışır, çıktısı: Bu çok harika<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu çok </span><span style="color: #007700">{</span><span style="color: #0000BB">$şahane</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışır<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu karenin bir kenarı </span><span style="color: #007700">{</span><span style="color: #0000BB">$square</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">width</span><span style="color: #007700">}</span><span style="color: #DD0000">00 santimetre uzunluktadır."</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışır, tırnaklı anahtarlar sadece kaşlı ayraç sözdizimi kullanılarak çalışır<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu çalışır: </span><span style="color: #007700">{</span><span style="color: #0000BB">$arr</span><span style="color: #007700">[</span><span style="color: #DD0000">'key'</span><span style="color: #007700">]}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br /><br /></span><span style="color: #FF8000">// Çalışır<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu çalışır: </span><span style="color: #007700">{</span><span style="color: #0000BB">$arr</span><span style="color: #007700">[</span><span style="color: #0000BB">4</span><span style="color: #007700">][</span><span style="color: #0000BB">3</span><span style="color: #007700">]}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// $foo[bar] bir dize dışında neden yanlışsa bu da o yüzden yanlıştır.<br />// PHP önce foo adında bir sabit arar, bulamazsa hata oluşur.<br />// Sabit bulunursa, değeri (foo'nun kendisi değil) dizi indisinde kullanılır.<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu yanlış: </span><span style="color: #007700">{</span><span style="color: #0000BB">$arr</span><span style="color: #007700">[</span><span style="color: #0000BB">foo</span><span style="color: #007700">][</span><span style="color: #0000BB">3</span><span style="color: #007700">]}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışır. Çok boyutlu dizileri dizelerin içinde kullanılırken,<br />// dizileri daima kaşlı ayraçlar arasına alın.<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu çalışır: </span><span style="color: #007700">{</span><span style="color: #0000BB">$arr</span><span style="color: #007700">[</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">][</span><span style="color: #0000BB">3</span><span style="color: #007700">]}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışır.<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"Bu çalışır: " </span><span style="color: #007700">. </span><span style="color: #0000BB">$arr</span><span style="color: #007700">[</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">][</span><span style="color: #0000BB">3</span><span style="color: #007700">];<br /><br />echo </span><span style="color: #DD0000">"Bu da çalışır: </span><span style="color: #007700">{</span><span style="color: #0000BB">$obj</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">values</span><span style="color: #007700">[</span><span style="color: #0000BB">3</span><span style="color: #007700">]-&gt;</span><span style="color: #0000BB">name</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br />echo </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$name</span><span style="color: #DD0000"> adlı değişkenin değeri: </span><span style="color: #007700">{${</span><span style="color: #0000BB">$name</span><span style="color: #007700">}}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br />echo </span><span style="color: #DD0000">"Adı getName() işlevinin dönüş değeri olan değişkenin değeri: </span><span style="color: #007700">{${</span><span style="color: #0000BB">getName</span><span style="color: #007700">()}}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br />echo </span><span style="color: #DD0000">"Adı \$object-&gt;getName() yönteminin dönüş değeri olan değişkenin değeri: </span><span style="color: #007700">{${</span><span style="color: #0000BB">$object</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getName</span><span style="color: #007700">()}}</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışmaz, çıktısı: This is the return value of getName(): {getName()}<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"This is the return value of getName(): {getName()}"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Çalışmaz, çıktısı: C:\folder\{harika}.txt<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"C:\folder\{</span><span style="color: #0000BB">$şahane</span><span style="color: #DD0000">}.txt"<br /></span><span style="color: #FF8000">// Çalışır, çıktısı: C:\folder\harika.txt<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"C:\\folder\\</span><span style="color: #007700">{</span><span style="color: #0000BB">$şahane</span><span style="color: #007700">}</span><span style="color: #DD0000">.txt"<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>

    <p class="para">
     Bu sözdizimini kullanan dizeler içindeki değişkenler üzerinden de sınıf
     özelliklerine erişmek mümkündür.
    </p>

   <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">foo </span><span style="color: #007700">{<br />    var </span><span style="color: #0000BB">$bar </span><span style="color: #007700">= </span><span style="color: #DD0000">'I am bar.'</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">$foo </span><span style="color: #007700">= new </span><span style="color: #0000BB">foo</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$bar </span><span style="color: #007700">= </span><span style="color: #DD0000">'bar'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$baz </span><span style="color: #007700">= array(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">, </span><span style="color: #DD0000">'bar'</span><span style="color: #007700">, </span><span style="color: #DD0000">'baz'</span><span style="color: #007700">, </span><span style="color: #DD0000">'quux'</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">$foo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">$bar</span><span style="color: #007700">}</span><span style="color: #DD0000">\n"</span><span style="color: #007700">;<br />echo </span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">$foo</span><span style="color: #007700">-&gt;{</span><span style="color: #0000BB">$baz</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">]}}</span><span style="color: #DD0000">\n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   <p class="para">
Yukarıdaki örneğin çıktısı:</p>
   <div class="example-contents screen">
<div class="cdata"><pre>
 I am bar.
 I am bar.
</pre></div>
   </div>
   </div>

    <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
     <p class="para">
      <code class="literal">{$}</code> içindeki işlev ve yöntem çağrılarından,
      statik sınıf değişkenlerinden ve sınıf sabitlerinden erişilen değer,
      dizenin tanımlandığı etki alanındaki bir değişkenin ismi olarak
      yorumlanır. Kaşlı ayraçların tek başına kullanımı
      (<code class="literal">{}</code>), statik sınıf değişkenlerinin veya sınıf
      sabitlerinin değerlerine veya işlev ve yöntemlerin dönüş değerlerine
      erişim için kullanılmaz.
     </p>
    </p></blockquote>
    <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: #FF8000">// Tüm hatalar gösterilsin.<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ALL</span><span style="color: #007700">);<br /><br />class </span><span style="color: #0000BB">beers </span><span style="color: #007700">{<br />    const </span><span style="color: #0000BB">softdrink </span><span style="color: #007700">= </span><span style="color: #DD0000">'rootbeer'</span><span style="color: #007700">;<br />    public static </span><span style="color: #0000BB">$ale </span><span style="color: #007700">= </span><span style="color: #DD0000">'ipa'</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">$rootbeer </span><span style="color: #007700">= </span><span style="color: #DD0000">'A &amp; W'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$ipa </span><span style="color: #007700">= </span><span style="color: #DD0000">'Alexander Keith\'s'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Bu çalışır; çıktısı: I'd like an A &amp; W<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"I'd like an </span><span style="color: #007700">{${</span><span style="color: #0000BB">beers</span><span style="color: #007700">::</span><span style="color: #0000BB">softdrink</span><span style="color: #007700">}}</span><span style="color: #DD0000">\n"</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Bu da çalışır; çıktısı: I'd like an Alexander Keith's<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">"I'd like an </span><span style="color: #007700">{${</span><span style="color: #0000BB">beers</span><span style="color: #007700">::</span><span style="color: #0000BB">$ale</span><span style="color: #007700">}}</span><span style="color: #DD0000">\n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>

   </div>
  </div>

  <div class="sect3" id="language.types.string.substr">
   <h4 class="title">Dizge erişimi ve karaktere göre değişiklik</h4>

   <p class="para">
    Dizgelerin içindeki karakterlere, dizilerin köşeli ayraçları arasında
    karakterin dizinin başlangıcından itibaren (ilk karakterin indisi sıfır
    olmak üzere) kaçıncı karakter olduğu belirtilerek ($dize[42] gibi)
    erişilebilir veya o karakterde değişiklik yapılabilir. Dizgeler bu
    nedenle bir karakter dizisi olarak düşünülür. 1 karakterden fazlasını elde
    etmek veya yer değiştirmek isterseniz  <span class="function"><a href="function.substr.php" class="function">substr()</a></span> ve
    <span class="function"><a href="function.substr-replace.php" class="function">substr_replace()</a></span> işlevlerini kullanabilirsiniz.
   </p>

   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
     PHP 7.1.0 ve sonrasında, negatif dize başlangıçları da desteklenmektedir.
     Öncesinde, bunların okunması boş bir dizeyle ve <strong><code><a href="errorfunc.constants.php#constant.e-notice">E_NOTICE</a></code></strong>
     çıktılanmasıyla, yazılması ise dizenin olduğu gibi bırakılması ve
     <strong><code><a href="errorfunc.constants.php#constant.e-warning">E_WARNING</a></code></strong> çıktılanması ile sonuçlanırdı.
    </span>
   </p></blockquote>

   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
     PHP 8.0.0 öncesinde, dizge karakterlerine ayrıca
     <var class="varname">$str{42}</var> biçeminde kaşlı ayraçlar kullanılarak da
     erişilebiliyordu. Bu tür kaşlı ayraç kullanımı PHP 7.4.0 itibariyle
     önerilmemekte olup PHP 8.0.0 ve sonrasında desteklenmemektedir.
    </span>
   </p></blockquote>

   <div class="warning"><strong class="warning">Uyarı</strong>
    <p class="simpara">
     Karakter indisi olarak dizenin uzunluğundan büyük bir değer belirtmek,
     dizenin sonuna boşlukların eklenmesine sebep olur. Tamsayı olmayan
     indis değerleri tamsayıya dönüştürülür. Kuraldışı indis belirtimi
     <strong><code><a href="errorfunc.constants.php#constant.e-warning">E_WARNING</a></code></strong>&#039;e sebep olur.
     Atanmış bir dizenin sadece ilk karakteri kullanılır.
     PHP 7.1.0 ve sonrasında, boş dize ataması ölümcül hata ile sonuçlanır.
     Evvelce, bir NULL bayt atanırdı.
    </p>
   </div>

   <div class="warning"><strong class="warning">Uyarı</strong>
    <p class="simpara">
     Dahili olarak, PHP dizeleri bayt dizileridir. Sonuç olarak, dizi ayraçları
     kullanarak bir dizeye erişmek ve değişklik yapmak, çok baytlı gösterimde
     güvenli değildir. Bu işlem dizelere sadece ASCII gibi tek baytlık
     kodlamalarda yapılmalıdır.
    </p>
   </div>

   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <span class="simpara">
     PHP 7.1.0 ve sonrasında, boş dize üzerinde boş indis işleci kullanımı
     ölümcül hataya yol açar. Evvelce, boş dize sessizce bir diziye
     dönüştürülürdü.
    </span>
   </p></blockquote>

   <div class="example" id="example-17">
    <p><strong>Örnek 17 - Bazı dize örnekleri</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// Dizgenin ilk karakterini alalım<br /></span><span style="color: #0000BB">$str </span><span style="color: #007700">= </span><span style="color: #DD0000">'This is a test.'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$first </span><span style="color: #007700">= </span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">];<br /><br /></span><span style="color: #FF8000">// Dizgenin üçüncü karakterini alalım<br /></span><span style="color: #0000BB">$third </span><span style="color: #007700">= </span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #0000BB">2</span><span style="color: #007700">];<br /><br /></span><span style="color: #FF8000">// Dizgenin son karakterini alalım<br /></span><span style="color: #0000BB">$str </span><span style="color: #007700">= </span><span style="color: #DD0000">'This is still a test.'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$last </span><span style="color: #007700">= </span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #0000BB">strlen</span><span style="color: #007700">(</span><span style="color: #0000BB">$str</span><span style="color: #007700">)-</span><span style="color: #0000BB">1</span><span style="color: #007700">];<br /><br /></span><span style="color: #FF8000">// Dizgenin son karakterini değiştirelim<br /></span><span style="color: #0000BB">$str </span><span style="color: #007700">= </span><span style="color: #DD0000">'Look at the sea'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #0000BB">strlen</span><span style="color: #007700">(</span><span style="color: #0000BB">$str</span><span style="color: #007700">)-</span><span style="color: #0000BB">1</span><span style="color: #007700">] = </span><span style="color: #DD0000">'e'</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>

   <p class="para">
    Dizi başlangıçları ya tamsayı ya da tamsayı benzeri dize olmalıdır,
    aksi takdirde bir uyarı yavrulanır.
   </p>

   <div class="example" id="example-18">
    <p><strong>Örnek 18 - Geçersiz dize başlangıçları örneği</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$str </span><span style="color: #007700">= </span><span style="color: #DD0000">'abc'</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'1'</span><span style="color: #007700">]);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(isset(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'1'</span><span style="color: #007700">]));<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'1.0'</span><span style="color: #007700">]);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(isset(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'1.0'</span><span style="color: #007700">]));<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'x'</span><span style="color: #007700">]);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(isset(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'x'</span><span style="color: #007700">]));<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'1x'</span><span style="color: #007700">]);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(isset(</span><span style="color: #0000BB">$str</span><span style="color: #007700">[</span><span style="color: #DD0000">'1x'</span><span style="color: #007700">]));<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

    <div class="example-contents"><p>
Yukarıdaki örneğin çıktısı:</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
string(1) &quot;b&quot;
bool(true)

Warning: Illegal string offset &#039;1.0&#039; in /tmp/t.php on line 7
string(1) &quot;b&quot;
bool(false)

Warning: Illegal string offset &#039;x&#039; in /tmp/t.php on line 9
string(1) &quot;a&quot;
bool(false)
string(1) &quot;b&quot;
bool(false)
</pre></div>
    </div>
   </div>

   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <p class="para">
     Dize değişmezleri içindeki karakterlere <code class="literal">[]</code> veya
     <code class="literal">{}</code> kullanılarak erişilebilir.
    </p>
   </p></blockquote>

   <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
    <p class="para">
     <code class="literal">{}</code> sözdizimini kullanarak dize değişmezleri içindeki
     karakterlere erişim PHP 7.4&#039;te kullanımdan kaldırılmıştır. PHP 8.0&#039;da
     ise tamemen kaldırılmıştır.
    </p>
   </p></blockquote>
  </div>
 </div>

 <div class="sect2" id="language.types.string.useful-funcs">
  <h3 class="title">Kullanışlı işlevler ve işleçler</h3>

  <p class="para">
   Dizgeler &#039;.&#039; (nokta) işleci kullanılarak ardarda eklenebilir. &#039;+&#039;
   (toplama) işlecinin bu amaçla kullanımının yararsız oluşuna dikkat ediniz.
   Daha ayrıntılı bilgi edinmek için <a href="language.operators.string.php" class="link">Dizge İşleçleri</a> belgesine
   bakınız.
  </p>

  <p class="para">
   Dizgelerde değişiklik yapmak için çok sayıda yararlı işlev mevcuttur.
  </p>

  <p class="simpara">
   Genel işlevler için <a href="ref.strings.php" class="link">Dize İşlevleri</a>ne,
   ileri düzey bul ve değiştir işlevselliği için <a href="ref.pcre.php" class="link">Perl uyumlu düzenli ifade işlevleri</a>ne bakınız.
  </p>

  <p class="simpara">
   Ayrıca, <a href="ref.url.php" class="link">URL dizeleri için işlevler</a> ve
   dizeleri şifrelemek veya şifrelerini çözmek için
   <a href="ref.sodium.php" class="link">Sodium</a> ve
   <a href="ref.hash.php" class="link">Hash</a> işlevleri vardır.
  </p>

  <p class="simpara">
   Son olarak, <a href="ref.ctype.php" class="link">karakter türü işlevleri</a>ne de
   bakabilirsiniz.
  </p>
 </div>

 <div class="sect2" id="language.types.string.casting">
  <h3 class="title">Dizgeye dönüşüm</h3>

  <p class="para">
   Bir değer bir dizeye <code class="literal">(string)</code> tür çarpıtması veya
   <span class="function"><a href="function.strval.php" class="function">strval()</a></span> işleviyle dönüştürülür. Bir dizenin gerekli
   olduğu ifade bağlamlarında dizeye dönüşüm otomatik olarak gerçekleşir.
   Bu genellikle, <span class="function"><a href="function.echo.php" class="function">echo</a></span> veya <span class="function"><a href="function.print.php" class="function">print</a></span>
   işlevleri kullanılırken veya bir değişken bir dize ile karşılaştırılırken
   gerçekleşir. Aşağıdakilere, <a href="language.types.php" class="link">Türler</a>
   ve <a href="language.types.type-juggling.php" class="link">Tür Dönüşümü</a>
   bölümlerinde daha ayrıntılı değinilmiştir. Ayrıca,
   <span class="function"><a href="function.settype.php" class="function">settype()</a></span> işlevine de bakabilirsiniz.
  </p>

  <p class="para">
    <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span> türündeki <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> değeri <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
    türündeki <code class="literal">&quot;1&quot;</code> değerine dönüştürülür.
    <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span> türündeki <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> değeri <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
    türündeki <code class="literal">&quot;&quot;</code> değerine (boş dizeye) dönüştürülür. Bu
    şekilde, <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span> ve <span class="type"><a href="language.types.string.php" class="type string">string</a></span> değerler arasında
    her iki yönde de dönüşüm yapılabilmektedir.
  </p>

  <p class="para">
   <span class="type"><a href="language.types.integer.php" class="type integer">integer</a></span> veya <span class="type"><a href="language.types.float.php" class="type float">float</a></span> türünde bir değerin
   <span class="type"><a href="language.types.string.php" class="type string">string</a></span> türüne dönüşümü sayının dizesel gösterimiyle (üstel
   gösterim dahil) sonuçlanır. Kayan noktalı sayılar üstel gösterim
   kullanılarak dönüştürülebilir (<code class="literal">4.1E+6</code> gibi).
  </p>

  <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
   <p class="para">
    PHP 8.0.0 itibariyle, ondalık nokta karakteri daima
    noktadır (&quot;<code class="literal">.</code>&quot;). PHP 8.0.0 öncesinde
    betiğin çalıştığı yerele (LC_NUMERIC) özgüdür.
    Bakınız: <span class="function"><a href="function.setlocale.php" class="function">setlocale()</a></span> işlevi.
   </p>
  </p></blockquote>

  <p class="para">
   Diziler daima <code class="literal">&quot;Array&quot;</code> dizesine dönüştürülür; bundan
   dolayı <span class="function"><a href="function.echo.php" class="function">echo</a></span> ve <span class="function"><a href="function.print.php" class="function">print</a></span> bir dizinin
   içeriğini kendiliklerinden gösteremezler. Tek bir dizi elemanını
   görüntüleyebilmek için <code class="literal">echo $arr[&#039;foo&#039;]</code> gibi bir oluşum
   kullanınız. İçeriğin tamamının görüntülenebilmesiyle ilgili ipuçları için
   aşağıya bakınız.
  </p>

  <p class="para">
   <span class="type"><a href="language.types.object.php" class="type object">object</a></span> türleri <span class="type"><a href="language.types.string.php" class="type string">string</a></span> türüne dönüştürmek için
   <a href="language.oop5.magic.php" class="link">__toString</a> sihirli yöntemi
   kullanılmalıdır.
  </p>

  <p class="para">
   <span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> türler daima <code class="literal">&quot;Resource id #1&quot;</code>
   benzeri bir dizeye dönüştürülürler; buradaki <code class="literal">1</code>,
   özkaynağa PHP tarafından çalışma anında atanan eşsiz bir sayıdır.
   Bu dizenin tam yapısı değişikliğe konu olduğundan güvenilmemelidir ve değişime
   tabi tutulmalıdır. Çalıştırılan bir betiğin (bir sayfa isteği veya CLI işlemi)
   ömrü boyunca, belirli bir özkaynak için daima benzersiz olacak ve yeniden
   kullanılabilir olmayacaktır. Özkaynağın türünü
   öğrenmek için <span class="function"><a href="function.get-resource-type.php" class="function">get_resource_type()</a></span> işlevini kullanınız.
  </p>

  <p class="para">
   <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> daima boş bir dizeye dönüştürülür.
  </p>

  <p class="para">
   Yukarıda bahsedildiği gibi, bir diziyi, nesneyi veya özkaynağı doğrudan
   dönüştürmek, bunların değerleri hakkında işe yarar hiçbir bilgi sağlamaz.
   Bu tür içerikleri daha verimli şekilde incelemek isterseniz
   <span class="function"><a href="function.print-r.php" class="function">print_r()</a></span> ve <span class="function"><a href="function.var-dump.php" class="function">var_dump()</a></span> işlevlerine
   bakınız.
  </p>

  <p class="para">
   Çoğu PHP değeri kalıcı olarak saklamak amacıyla dizelere
   dönüştürülebilir. Bu yönteme dizeleştirme adı verilir ve
   <span class="function"><a href="function.serialize.php" class="function">serialize()</a></span> işlevi tarafından gerçekleştirilir.
  </p>
 </div>

 <div class="sect2" id="language.types.string.details">
  <h3 class="title">String Türü ve Ayrıntılar</h3>

  <p class="para">
   PHP&#039;de <span class="type"><a href="language.types.string.php" class="type string">string</a></span> türü bir bayt dizisi ve tampon uzumlığunu
   belirten bir tamsayı olarak gerçeklenmiştir. Bu baytların nasıl
   karakterlere dönüştüğü hakkında bir bilgiye sahip değildir, bu görev
   yazılımcıya bırakılmıştır. Bir dizeyi oluşturan değerlerle ilgili bir
   sınırlama yoktur. Özellikle <code class="literal">0</code> değerli baytlara (NUL
   baytlar) dizenin her yerinde izin verilir. (Bununla birlikte, bu kılavuzda
   &quot;ikil olarak güvenli&quot; olmadığı belirtilen bir kaç işlev, dizeleri, NULL
   baytından sonra verileri yok sayan kitaplıklara dağıtabilir.)
  </p>
  <p class="para">
   <span class="type"><a href="language.types.string.php" class="type string">string</a></span> türünün bu doğası, PHP&#039;de neden ayrı bir bayt türünün
   olmadığını açıklar; bu rolü dizeler üstlenir. Örneğin metin veri
   döndürmeyen işlevler, ham veriyi bir ağ soketinden okuyup yine de dize
   döndürecektir.
  </p>
  <p class="para">
   PHP dizelere belli bir karakter kodlaması dayatmaz, dizelerin nasıl
   baytlara dönüştüğü merak edilebilir. Örneğin, <code class="literal">&quot;Ã¡&quot;</code>
   dizesi <code class="literal">&quot;\xE1&quot;</code> (ISO-8859-1),
   <code class="literal">&quot;\xC3\xA1&quot;</code> (UTF-8, C form),
   <code class="literal">&quot;\x61\xCC\x81&quot;</code> (UTF-8, D form) olarak mı yoksa olası
   başka bir gösterime göre mi kodlanacak? Bunun yanıtı, betiğin karakter
   kodlaması neyse ona göre karakterler kodlanır, olacaktır. Bu bakımdan,
   betik örneğin ISO-8859-1&#039;de yazılmışsa dize de ISO-8859-1&#039;de kodlanacaktır.
   Ancak, Zend Çokbaytlılık etkinse bu uygulanmaz; bu durumda betik keyfi bir
   kodlamada (açıkça belirtilmiş veya algılanmış olabilir) yazılabilir ve
   ardından belli bir dahili kodlamaya (dizeler için kullanılacak kodlama)
   dönüştürülebilir. Betiğin kodlanmasında (veya dahili kodlamada, Zend
   Çokbaytlılık etkin olmalıdır) bazı kısıtlamalar olduğunu unutmayın.
   Bu hemen hemen her zaman, bu kodlamanın UTF-8 veya ISO-8859-1 gibi
   ASCII&#039;nin uyumlu bir üst kümesi olması gerektiği anlamına gelir. Bununla
   birlikte, büyük/küçük harf durumlarında aynı bayt değerlerinin
   kullanılabildiği durum bağımlı kodlamaların sorunlu olabileceğini unutmayın.
  </p>
  <p class="para">
   Şüphesiz, kullanışlı olmak noktasında, metinler üzerinde çalışan işlevler
   dizenin nasıl kodlanacağına ilşkin bazı varsayımlarda bulunabilir.
   Ne yazık ki, işlevler arasında bu konuda çok farklı varsayımlar mevcuttur:
  </p>
  <ul class="itemizedlist">
   <li class="listitem">
    <span class="simpara">
     Bazı işlevler dizenin tek baytlı bir kodlamayla kodlanacağını varsayar,
     fakat bu baytları belli karakterlere yorumlama gereği duymazlar.
     <span class="function"><a href="function.substr.php" class="function">substr()</a></span>, <span class="function"><a href="function.strpos.php" class="function">strpos()</a></span>,
     <span class="function"><a href="function.strlen.php" class="function">strlen()</a></span> ve <span class="function"><a href="function.strcmp.php" class="function">strcmp()</a></span> işlevleri bu
     durumdadır. Bu işlevlerin bellek tamponlarında, yani baytlar ve bayt
     adresleriyle çalıştıkları için böyle oldukları düşünülebilir.
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     Diğer bir işlev grubu, dizgenin kodlamasının aktarıldığını ya da bir
     öntanımlı kodlamanın olduğunu varsayar.
     <a href="book.mbstring.php" class="link">mbstring</a> eklentisindeki işlevler
     ve <span class="function"><a href="function.htmlentities.php" class="function">htmlentities()</a></span> böyledir.
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     Bir başka işlev grubu geçerli yereli kullanır (bak
     <span class="function"><a href="function.setlocale.php" class="function">setlocale()</a></span>), fakat bayt bayt çalışır.
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     Son grup, dizenin belli bir kodlamayı, normal olarak UTF-8 kullandığını
     varsayar.  <a href="book.intl.php" class="link">intl</a> ve
     <a href="book.pcre.php" class="link">PCRE</a> eklentilerindeki işlevlerin çoğu
     böyledir (PCRE eklentilerindeki işlevlerde sadece  <code class="literal">u</code>
     değiştircisi kullanıldığında).
    </span>
   </li>
  </ul>

  <p class="para">
   Sonuç olarak, Unicode kullanarak doğru programların yazılması, çalışmayan
   ve büyük olasılıkla verileri bozacak işlevlerden itinayla kaçınmaya ve
   bunun yerine doğru davranan, genellikle <a href="book.intl.php" class="link">intl</a>
   ve <a href="book.mbstring.php" class="link">mbstring</a> eklentilerindeki işlevleri
   kullanmaya bağlıdır. Bununla birlikte, Unicode kodlamaları işleyebilen
   işlevleri kullanmak sadece başlangıçtır. Dilin sağladığı işlevler ne olursa
   olsun, asıl olan Unicode belirtimini bilmektir. Örneğin, sadece büyük ve
   küçük harfler olduğunu varsayan bir yazılım yanlış kabul yapıyor demektir.
  </p>
 </div>
</div><?php manual_footer($setup); ?>