Phar
PHP Manual

Phar::copy

(PHP >= 5.3.0, PECL phar >= 2.0.0)

Phar::copyCopy a file internal to the phar archive to another new file within the phar

설명

bool Phar::copy ( string $oldfile , string $newfile )

Note: 이 메쏘드가 Phar 객체에 작용하려면 php.ini 설정 phar.readonly0으로 설정해야 합니다. 그렇지 않으면, PharException이 발생합니다.

Copy a file internal to the phar archive to another new file within the phar. This is an object-oriented alternative to using copy() with the phar stream wrapper.

인수

oldfile

newfile

반환값

returns TRUE on success, but it is safer to encase method call in a try/catch block and assume success if no exception is thrown.

오류/예외

throws UnexpectedValueException if the source file does not exist, the destination file already exists, write access is disabled, opening either file fails, reading the source file fails, or a PharException if writing the changes to the phar fails.

예제

Example #1 A Phar::copy() example

This example shows using Phar::copy() and the equivalent stream wrapper performance of the same thing. The primary difference between the two approaches is error handling. All Phar methods throw exceptions, whereas the stream wrapper uses trigger_error().

<?php
try {
    
$phar = new Phar('myphar.phar');
    
$phar['a'] = 'hi';
    
$phar->copy('a''b');
    echo 
$phar['b']; // outputs "hi"
} catch (Exception $e) {
    
// handle error
}

// the stream wrapper equivalent of the above code.
// E_WARNINGS are triggered on error rather than exceptions.
copy('phar://myphar.phar/a''phar//myphar.phar/c');
echo 
file_get_contents('phar://myphar.phar/c'); // outputs "hi"
?>


Phar
PHP Manual