PHP 8.5.0 Alpha 1 available for testing

PharData::copy

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

PharData::copyCopia un fichero interno del archivo tar/zip a otro fichero dentro del mismo archivo

Descripción

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

Copia un fichero interno del archivo tar/zip a otro fichero dentro del mismo archivo. Es una alternativa orientada a objetos al uso de copy() con el gestor de flujos phar.

Parámetros

from

to

Valores devueltos

Siempre devuelve true.

Errores/Excepciones

Se lanza una excepción UnexpectedValueException si el fichero de origen no existe, si el fichero de destino ya existe, si el soporte de escritura está desactivado, si falla la apertura de alguno de los dos ficheros o si falla la lectura del fichero de origen; o se lanza una excepción PharException si falla la escritura de los cambios del archivo phar.

Ejemplos

Ejemplo #1 Un ejemplo con PharData::copy()

Este ejemplo muestra el uso de PharData::copy() y su equivalente en términos de gestor de flujos. La principal diferencia entre ambos enfoques radica en la gestión de errores. Todos los métodos PharData lanzan excepciones, mientras que el gestor de flujos utiliza trigger_error().

<?php

try {
$phar = new PharData('monphar.tar');
$phar['a'] = 'salut';
$phar->copy('a', 'b');
echo
$phar['b']; // Muestra "phar://myphar.tar/b"
} catch (Exception $e) {
// Se manejan los errores
}

// El equivalente en términos de flujo del ejemplo anterior.
// Se lanzan E_WARNING en caso de error en lugar de excepciones.
copy('phar://monphar.tar/a', 'phar//monphar.tar/c');
echo
file_get_contents('phar://monphar.tar/c'); // Muestra "salut"
?>

add a note

User Contributed Notes

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