PHP8 PharData::convertToExecutable

2024-02-22 11:47 更新

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

PharData::convertToExecutable — 將不可執(zhí)行的 tar/zip 存檔轉(zhuǎn)換為可執(zhí)行的 phar 存檔

說明

public PharData::convertToExecutable(?int $format = null, ?int $compression = null, ?string $extension = null): ?Phar
注意:此方法需要 將 中的 設(shè)為 以適合 Phar 對象. 否則, 將拋出PharException.php.iniphar.readonly0

此方法用于將不可執(zhí)行的 tar 或 zip 存檔轉(zhuǎn)換為 可執(zhí)行 PHAR 存檔。三種可執(zhí)行文件格式中的任何一種 可以使用(phar、tar 或 zip),也可以執(zhí)行整體存檔壓縮。

如果未指定任何更改,此方法將引發(fā) BadMethodCallException。

如果成功,該方法將在磁盤上創(chuàng)建一個新的存檔并返回一個 Phar 對象。舊存檔不會從磁盤中刪除,應(yīng)在之后手動完成 該過程已完成。

參數(shù) 

format

這應(yīng)該是 , , 或。如果設(shè)置為 null,則現(xiàn)有文件格式 將被保留。Phar::PHARPhar::TARPhar::ZIP

compression

這應(yīng)該是沒有完整存檔的檔案之一 壓縮,用于基于 zlib 的壓縮和基于 bzip 的壓縮。Phar::NONEPhar::GZPhar::BZ2

extension

此參數(shù)用于覆蓋 轉(zhuǎn)換后的存檔。請注意,所有基于 zip 和 tar 的 phar 存檔都必須包含其文件擴展名,以便作為 法爾檔案。.phar

如果轉(zhuǎn)換為基于 phar 的存檔,則默認(rèn)擴展名為 、 或,具體取決于指定的壓縮。對于基于 tar 的 phar 存檔, 默認(rèn)擴展名為 、 、 和。對于基于 zip 的 phar 存檔, 默認(rèn)擴展名為 。.phar.phar.gz.phar.bz2.phar.tar.phar.tar.gz.phar.tar.bz2.phar.zip

返回值 

該方法在成功時返回一個 Phar 對象, 或失敗時為 null。

錯誤/異常 

此方法在無法時引發(fā) BadMethodCallException 要壓縮,已指定未知的壓縮方法,請求的 archive 正在使用 Phar::startBuffering() 和 沒有以 Phar::stopBuffering() 結(jié)束,如果禁用了寫入支持,則為 UnexpectedValueException, 如果遇到任何問題,則為 PharException 在 phar 創(chuàng)建過程中。

更新日志 

版本說明
8.0.0format、 和 現(xiàn)在可為 null。compressionlocalName

示例 

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

使用 PharData::convertToExecutable():

<?php
try {
    $tarphar = new PharData('myphar.tar');
    // convert it to the phar file format
    // note that myphar.tar is *not* unlinked
    $phar = $tarphar->convertToExecutable(Phar::PHAR); // creates myphar.phar
    $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
    // creates myphar.phar.tgz
    $compressed = $tarphar->convertToExecutable(Phar::TAR, Phar::GZ, '.phar.tgz');
} catch (Exception $e) {
    // handle the error here
}
?>

參見 

  • Phar::convertToExecutable() - 將 phar 存檔轉(zhuǎn)換為另一種可執(zhí)行的 phar 存檔文件格式
  • Phar::convertToData() - 將 phar 存檔轉(zhuǎn)換為不可執(zhí)行的 tar 或 zip 文件
  • PharData::convertToData() - 將 phar 存檔轉(zhuǎn)換為不可執(zhí)行的 tar 或 zip 文件


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號