PHP8 PharData::copy

2024-02-22 11:47 更新

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

PharData::copy — 将 phar 存档内部的文件复制到 phar 中的另一个新文件

说明

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

将 tar/zip 存档内部的文件复制到同一存档中的另一个新文件。 这是使用 copy() 的面向对象的替代方案 phar 流包装器。

参数 

from
to

返回值 

成功时返回 true,但将方法调用封装在 try/catch 块,如果没有抛出异常,则假定成功。

错误/异常 

如果源文件不 exist,目标文件已存在,禁用写入访问,打开 文件失败,读取源文件失败,或者如果写入 phar 的更改失败,则为 PharException。

示例 

示例 #1 A PharData::copy() example

此示例演示如何使用 PharData::copy() 和 同一件事的等效流包装器性能。主要 这两种方法的区别在于错误处理。所有 PharData 方法 抛出异常,而流包装器使用 trigger_error()。

<?php
try {
    $phar = new PharData('myphar.tar');
    $phar['a'] = 'hi';
    $phar->copy('a', 'b');
    echo $phar['b']; // outputs "phar://myphar.tar/b"
} 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.tar/a', 'phar//myphar.tar/c');
echo file_get_contents('phar://myphar.tar/c'); // outputs "hi"
?>


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号