<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/class.phardata.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'phardata.copy.php',
    1 => 'PharData::copy',
    2 => 'Copie un fichier interne &agrave; l\'archive tar/zip vers un autre fichier au sein de la m&ecirc;me archive',
  ),
  'up' => 
  array (
    0 => 'class.phardata.php',
    1 => 'PharData',
  ),
  'prev' => 
  array (
    0 => 'phardata.converttoexecutable.php',
    1 => 'PharData::convertToExecutable',
  ),
  'next' => 
  array (
    0 => 'phardata.decompress.php',
    1 => 'PharData::decompress',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'reference/phar/PharData/copy.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="phardata.copy" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">PharData::copy</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.3.0, PHP 7, PHP 8, PECL phar &gt;= 2.0.0)</p><p class="refpurpose"><span class="refname">PharData::copy</span> &mdash; <span class="dc-title">Copie un fichier interne à l&#039;archive tar/zip vers un autre fichier au sein de la même archive</span></p>

 </div>
 
 <div class="refsect1 description" id="refsect1-phardata.copy-description">
  <h3 class="title">Description</h3>
  <div class="methodsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><strong>PharData::copy</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$from</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$to</code></span>): <span class="type"><a href="language.types.singleton.php" class="type true">true</a></span></div>
  
  <p class="para rdfs-comment">
   Copie un fichier interne à l&#039;archive tar/zip vers un autre fichier au sein de la même archive.
   C&#039;est une alternative orientée objet à l&#039;utilisation de <span class="function"><a href="function.copy.php" class="function">copy()</a></span> avec
   le gestionnaire de flux phar.
  </p>
 </div>

 
 <div class="refsect1 parameters" id="refsect1-phardata.copy-parameters">
  <h3 class="title">Liste de paramètres</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">from</code></dt>
     <dd>
      <p class="para">
      </p>
     </dd>
    
    
     <dt><code class="parameter">to</code></dt>
     <dd>
      <p class="para">
      </p>
     </dd>
    
   </dl>
  </p>  
 </div>

 
 <div class="refsect1 returnvalues" id="refsect1-phardata.copy-returnvalues">
  <h3 class="title">Valeurs de retour</h3>
  <p class="para">
   Retourne toujours <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>.
  </p>
 </div>

 
 <div class="refsect1 errors" id="refsect1-phardata.copy-errors">
  <h3 class="title">Erreurs / Exceptions</h3>
  <p class="para">
   lève une exception <span class="classname"><a href="class.unexpectedvalueexception.php" class="classname">UnexpectedValueException</a></span> si le fichier source n&#039;existe
   pas, si le fichier de destination existe déjà, si le support en écriture est désactivé, si l&#039;ouverture
   d&#039;un des deux fichiers échoue ou si la lecture du fichier source échoue; ou lève une exception
   <span class="classname"><a href="class.pharexception.php" class="classname">PharException</a></span> si l&#039;écriture des changements de l&#039;archive phar échoue.
  </p>
 </div>

 
 <div class="refsect1 examples" id="refsect1-phardata.copy-examples">
  <h3 class="title">Exemples</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Exemple #1 Un exemple avec <span class="function"><strong>PharData::copy()</strong></span></strong></p>
    <div class="example-contents"><p>
     Cet exemple montre l&#039;utilisation de <span class="function"><strong>PharData::copy()</strong></span> et de son équivalent
     en termes de gestionnaire de flux. La différence principale entre les deux façons de faire
     concerne la gestion des erreurs. Toutes les méthodes PharData soulèvent des exceptions, alors
     que le gestionnaire de flux utilise <span class="function"><a href="function.trigger-error.php" class="function">trigger_error()</a></span>.
    </p></div>
    <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">try {<br />    </span><span style="color: #0000BB">$phar </span><span style="color: #007700">= new </span><span style="color: #0000BB">PharData</span><span style="color: #007700">(</span><span style="color: #DD0000">'monphar.tar'</span><span style="color: #007700">);<br />    </span><span style="color: #0000BB">$phar</span><span style="color: #007700">[</span><span style="color: #DD0000">'a'</span><span style="color: #007700">] = </span><span style="color: #DD0000">'salut'</span><span style="color: #007700">;<br />    </span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">copy</span><span style="color: #007700">(</span><span style="color: #DD0000">'a'</span><span style="color: #007700">, </span><span style="color: #DD0000">'b'</span><span style="color: #007700">);<br />    echo </span><span style="color: #0000BB">$phar</span><span style="color: #007700">[</span><span style="color: #DD0000">'b'</span><span style="color: #007700">]; </span><span style="color: #FF8000">// Affiche "phar://monphar.tar/b"<br /></span><span style="color: #007700">} catch (</span><span style="color: #0000BB">Exception $e</span><span style="color: #007700">) {<br />    </span><span style="color: #FF8000">// On traite les erreurs<br /></span><span style="color: #007700">}<br /><br /></span><span style="color: #FF8000">// l'équivalent en termes de flux de l'exemple ci-dessus.<br />// des E_WARNING sont lancés en cas d'erreur à la place d'exceptions.<br /></span><span style="color: #0000BB">copy</span><span style="color: #007700">(</span><span style="color: #DD0000">'phar://monphar.tar/a'</span><span style="color: #007700">, </span><span style="color: #DD0000">'phar//monphar.tar/c'</span><span style="color: #007700">);<br />echo </span><span style="color: #0000BB">file_get_contents</span><span style="color: #007700">(</span><span style="color: #DD0000">'phar://monphar.tar/c'</span><span style="color: #007700">); </span><span style="color: #FF8000">// Affiche "salut"<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

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