PHP 8.4.2 Released!

Phar::copy

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

Phar::copyCopie un fichier appartenant à une archive vers un autre fichier de la même archive

Description

public Phar::copy(string $from, string $to): true

Note:

Cette méthode nécessite que la variable de configuration INI phar.readonly soit définie à 0 pour fonctionner avec les objets Phar. Sinon, une exception PharException sera lançée.

Copie un fichier appartenant à une archive vers un nouveau fichier de la même archive. C'est une alternative orientée objet à l'utilisation de copy() avec un flux phar.

Liste de paramètres

from

to

Valeurs de retour

Retourne toujours true.

Erreurs / Exceptions

Lève une exception UnexpectedValueException si le fichier source n'existe pas, si le fichier destination existe déjà, si l'accès en écriture est désactivé, si ouvrir l'un ou l'autre des fichiers échoue, si la lecture du fichier source échoue, ou lève une exception PharException si l'écriture des changement dans le phar échoue.

Exemples

Exemple #1 Exemple avec Phar::copy()

Cet exemple montre comment utiliser Phar::copy() et la comparaison en terme de performance avec l'équivalent utilisant le flux phar. La différence principale entre les deux méthodes concerne la gestion des erreurs. Toutes les méthodes Phar lèvent des exceptions, là où les fonctions de flux utilisent trigger_error().

<?php

try {
$phar = new Phar('monphar.phar');

$phar['a'] = 'salut';
$phar->copy('a', 'b');

echo
$phar['b']; // Affiche "phar://myphar.phar/b"
} catch (Exception $e) {
// Traite les erreurs
}

// l'équivalent en terme de flux du code ci-dessus
// des E_WARNING sont retournés plutôt que des exceptions
copy('phar://monphar.phar/a', 'phar//monphar.phar/c');
echo
file_get_contents('phar://monphar.phar/c'); // Affiche "salut"

?>

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top