<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/wrappers.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'tr',
  ),
  'this' => 
  array (
    0 => 'wrappers.rar.php',
    1 => 'rar://',
    2 => 'RAR',
  ),
  'up' => 
  array (
    0 => 'wrappers.php',
    1 => 'Desteklenen Protokoller ve Sarmalayıcılar',
  ),
  'prev' => 
  array (
    0 => 'wrappers.ssh2.php',
    1 => 'ssh2://',
  ),
  'next' => 
  array (
    0 => 'wrappers.audio.php',
    1 => 'ogg://',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'tr',
    'path' => 'language/wrappers/rar.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="wrappers.rar" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">rar://</h1>
  <p class="refpurpose"><span class="refname">rar://</span> &mdash; <span class="dc-title">RAR</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-wrappers.rar-description">
  <h3 class="title">Açıklama</h3>
  <p class="para">
   Sarmalayıcı, arşivde depolandığı şekliyle, RAR arşivi için URL kodlu yol
   (göreli veya mutlak), isteğe bağlı bir yıldız işareti
   (<code class="literal">*</code>), isteğe bağlı bir diyez işareti
   (<code class="literal">#</code>) ve isteğe bağlı bir url kodlu girdi adı alır.
   Bir girdi adı belirtmek, numara işaretini gerektirir; girdi adında önde
   bir eğik çizgi isteğe bağlıdır.
  </p>

  <p class="simpara">
   Bu sarmalayıcı hem dosyaları hem de dizinleri açabilir. Dizinleri açarken,
   yıldız işareti dizin girdilerinin adlarını kodlanmamış olarak döndürülmeye
   zorlar. Belirtilmezse, URL olarak kodlanmış biçimde döndürülür - bunun
   nedeni, URL kodlu veriler gibi görünen dosya adlarının varlığında
   sarmalayıcının <span class="classname"><a href="class.recursivedirectoryiterator.php" class="classname">RecursiveDirectoryIterator</a></span> gibi
   yerleşik işlevsellik ile doğru şekilde kullanılmasını sağlamaktır.
  </p>

  <p class="simpara">
   Diyez işareti ve girdi adı kısmı dahil edilmemişse, arşivin kökü
   gösterilir. Bu, kök dizin arşivdeki tek bir girdide depolanmadığından
   normal dizinlerden farklıdır, çünkü ortaya çıkan akım değişiklik zamanı
   gibi bilgileri içermez. <span class="classname"><a href="class.recursivedirectoryiterator.php" class="classname">RecursiveDirectoryIterator</a></span>
   ile sarmalayıcının kullanımı, alt öğelerin URL&#039;lerinin doğru bir şekilde
   yapılandırılabilmesi için, köke erişirken diyez işaretinin URL&#039;ye dahil
   edilmesini gerektirir.
  </p>
  <blockquote class="note"><p><strong class="note">Bilginize</strong>: 
   <strong>Bu sarmalayıcı öntanımlı olarak etkin değildir</strong><br />
   <span class="simpara">
    <var class="filename">rar://</var> sarmalayıcısını kullanmak için,
    <a href="https://pecl.php.net/" class="link external">&raquo;&nbsp;PECL</a>&#039;de bulunan
    <a href="https://pecl.php.net/package/rar" class="link external">&raquo;&nbsp;rar</a> eklentisinin
    kurulması gerekir.
   </span>
  </p></blockquote>
  <p class="simpara">
   <var class="filename">rar://</var>
   PECL rar 3.0.0&#039;dan beri kullanılabilmektedir.
  </p>

 </div>


 <div class="refsect1 usage" id="refsect1-wrappers.rar-usage"> 
  <h3 class="title">Kullanımı</h3>
  <ul class="itemizedlist">
   <li class="listitem">
     <span class="simpara">
      <var class="filename">rar://&lt;url kodlu arşiv ismi&gt;[*][#[&lt;url kodlu
        girdi ismi&gt;]]</var>
     </span>
   </li>
  </ul>
 </div>
 

 <div class="refsect1 options" id="refsect1-wrappers.rar-options">
  <h3 class="title">Seçenekler</h3>
  <p class="para">
   <table class="doctable table">
    <caption><strong>Sarmalayıcı Özeti</strong></caption>
    
     <thead>
      <tr>
       <th>Özellik</th>
       <th>Destek</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td><a href="filesystem.configuration.php#ini.allow-url-fopen" class="link">allow_url_fopen</a> ile sınırlı</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td><a href="filesystem.configuration.php#ini.allow-url-include" class="link">allow_url_include</a> ile sınırlı</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td>Okuma izni</td>
       <td>Evet</td>
      </tr>

      <tr>
       <td>Yazma izni</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td>Ekleme izni</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td>Aynı anda okuma ve yazma izni</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td><span class="function"><a href="function.stat.php" class="function">stat()</a></span> desteği</td>
       <td>Evet</td>
      </tr>

      <tr>
       <td><span class="function"><a href="function.unlink.php" class="function">unlink()</a></span> desteği</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td><span class="function"><a href="function.rename.php" class="function">rename()</a></span> desteği</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td><span class="function"><a href="function.mkdir.php" class="function">mkdir()</a></span> desteği</td>
       <td>Hayır</td>
      </tr>

      <tr>
       <td><span class="function"><a href="function.rmdir.php" class="function">rmdir()</a></span> desteği</td>
       <td>Hayır</td>
      </tr>

     </tbody>
    
   </table>

  </p>

  
  <p class="para">
   <table class="doctable table">
    <caption><strong>Bağlam Seçenekleri</strong></caption>
    
     <thead>
      <tr>
       <th>İsim</th>
       <th>Kullanım</th>
       <th>Öntanımlı</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td><code class="literal">open_password</code></td>
       <td>
        Varsa, arşivin başlıklarını şifrelemek için kullanılan parola. WinRAR,
        daha sonra mevcut olduğunda başlık parolası ile aynı parolaya sahip
        tüm dosyaları şifreleyecektir, bu nedenle şifrelenmiş başlıklara sahip
        arşivler için <code class="literal">file_password</code> göz ardı edilecektir.
       </td>
       <td class="empty">&nbsp;</td>
      </tr>

      <tr>
       <td><code class="literal">file_password</code></td>
       <td>
        Varsa, bir dosyayı şifrelemek için kullanılan parola. Başlıklar da
        şifrelenmişse, bu seçenek <code class="literal">open_password</code> lehine
        göz ardı edilecektir. İki seçeneğin olmasının nedeni, arşivlerin
        ortaya çıkması durumunda farklı başlık ve dosya şifrelerine sahip
        arşivleri destekleme olasılığını elde tutmaktır. Arşivin başlıkları
        şifrelenmemişse, <code class="literal">open_password</code>&#039;un yok sayılacağını
        ve onun yerine bu seçeneğin kullanılmasının gerektiği unutulmamalıdır.
       </td>
       <td class="empty">&nbsp;</td>
      </tr>

      <tr>
       <td><code class="literal">volume_callback</code></td>
       <td>
        Eksik bölümlerin yolunu belirlemek için bir geriçağırım. Daha fazla
        bilgi için bkz. <span class="methodname"><a href="rararchive.open.php" class="methodname">RarArchive::open()</a></span>.
       </td>
       <td class="empty">&nbsp;</td>
      </tr>

     </tbody>
    
   </table>

  </p>
 </div>
 

 <div class="refsect1 examples" id="refsect1-wrappers.rar-examples">
  <h3 class="title">Örnekler</h3>
  <div class="example" id="example-1">
   <p><strong>Örnek 1 - Bir RAR arşinde gezinmek</strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br /></span><span style="color: #007700">class </span><span style="color: #0000BB">MyRecDirIt </span><span style="color: #007700">extends </span><span style="color: #0000BB">RecursiveDirectoryIterator </span><span style="color: #007700">{<br />    function </span><span style="color: #0000BB">current</span><span style="color: #007700">() {<br />        return </span><span style="color: #0000BB">rawurldecode</span><span style="color: #007700">(</span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSubPathName</span><span style="color: #007700">()) .<br />            (</span><span style="color: #0000BB">is_dir</span><span style="color: #007700">(</span><span style="color: #0000BB">parent</span><span style="color: #007700">::</span><span style="color: #0000BB">current</span><span style="color: #007700">())?</span><span style="color: #DD0000">" [DIR]"</span><span style="color: #007700">:</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br />    }<br />}<br /><br /></span><span style="color: #0000BB">$f </span><span style="color: #007700">= </span><span style="color: #DD0000">"rar://" </span><span style="color: #007700">. </span><span style="color: #0000BB">rawurlencode</span><span style="color: #007700">(</span><span style="color: #0000BB">dirname</span><span style="color: #007700">(</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">)) .<br />    </span><span style="color: #0000BB">DIRECTORY_SEPARATOR </span><span style="color: #007700">. </span><span style="color: #DD0000">'dirs_and_extra_headers.rar#'</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">$it </span><span style="color: #007700">= new </span><span style="color: #0000BB">RecursiveTreeIterator</span><span style="color: #007700">(new </span><span style="color: #0000BB">MyRecDirIt</span><span style="color: #007700">(</span><span style="color: #0000BB">$f</span><span style="color: #007700">));<br /><br />foreach (</span><span style="color: #0000BB">$it </span><span style="color: #007700">as </span><span style="color: #0000BB">$s</span><span style="color: #007700">) {<br />    echo </span><span style="color: #0000BB">$s</span><span style="color: #007700">, </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

    <div class="example-contents"><p>
Yukarıdaki örnek şuna benzer bir çıktı üretir:</p></div>
    <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">|-allow_everyone_ni [DIR]
|-file1.txt
|-file2_אּ.txt
|-with_streams.txt
\-אּ [DIR]
  |-אּ\%2Fempty%2E [DIR]
  | \-אּ\%2Fempty%2E\file7.txt
  |-אּ\empty [DIR]
  |-אּ\file3.txt
  |-אּ\file4_אּ.txt
  \-אּ\אּ_2 [DIR]
    |-אּ\אּ_2\file5.txt
    \-אּ\אּ_2\file6_אּ.txt</pre>
</div>
   </div>
  </div>
  <div class="example" id="example-2">
   <p><strong>Örnek 2 - Şifreli bir dosyanın açılması (başlık şifreleme)</strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$stream </span><span style="color: #007700">= </span><span style="color: #0000BB">fopen</span><span style="color: #007700">(</span><span style="color: #DD0000">"rar://" </span><span style="color: #007700">.<br />    </span><span style="color: #0000BB">rawurlencode</span><span style="color: #007700">(</span><span style="color: #0000BB">dirname</span><span style="color: #007700">(</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">)) . </span><span style="color: #0000BB">DIRECTORY_SEPARATOR </span><span style="color: #007700">.<br />    </span><span style="color: #DD0000">'encrypted_headers.rar' </span><span style="color: #007700">. </span><span style="color: #DD0000">'#encfile1.txt'</span><span style="color: #007700">, </span><span style="color: #DD0000">"r"</span><span style="color: #007700">, </span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />    </span><span style="color: #0000BB">stream_context_create</span><span style="color: #007700">(<br />        array(<br />            </span><span style="color: #DD0000">'rar' </span><span style="color: #007700">=&gt;<br />                array(<br />                    </span><span style="color: #DD0000">'open_password' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'samplepassword'<br />                </span><span style="color: #007700">)<br />            )<br />        )<br />    );<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">stream_get_contents</span><span style="color: #007700">(</span><span style="color: #0000BB">$stream</span><span style="color: #007700">));<br /></span><span style="color: #FF8000">/* çoğu dosyanın sahip olmadığı oluşturma ve<br /> * son erişim tarihi WinRAR'a dahil edilmiştir<br /> */<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">fstat</span><span style="color: #007700">(</span><span style="color: #0000BB">$stream</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

    <div class="example-contents"><p>
Yukarıdaki örnek şuna benzer bir çıktı üretir:</p></div>
    <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">string(26) &quot;Encrypted file 1 contents.&quot;
Array
(
    [0] =&gt; 0
    [1] =&gt; 0
    [2] =&gt; 33206
    [3] =&gt; 1
    [4] =&gt; 0
    [5] =&gt; 0
    [6] =&gt; 0
    [7] =&gt; 26
    [8] =&gt; 0
    [9] =&gt; 1259550052
    [10] =&gt; 0
    [11] =&gt; -1
    [12] =&gt; -1
    [dev] =&gt; 0
    [ino] =&gt; 0
    [mode] =&gt; 33206
    [nlink] =&gt; 1
    [uid] =&gt; 0
    [gid] =&gt; 0
    [rdev] =&gt; 0
    [size] =&gt; 26
    [atime] =&gt; 0
    [mtime] =&gt; 1259550052
    [ctime] =&gt; 0
    [blksize] =&gt; -1
    [blocks] =&gt; -1
)</pre>
</div>
   </div>
  </div>
 </div>


</div><?php manual_footer($setup); ?>