Phar::decompressFiles

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

Phar::decompressFiles β€” РаспаковываСт всС Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ Phar-Π°Ρ€Ρ…ΠΈΠ²Π΅

ОписаниС

public function Phar::decompressFiles(): true

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Phar потрСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ phar.readonly Π² Ρ„Π°ΠΉΠ»Π΅ php.ini Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, ΠΈΠ½Π°Ρ‡Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ выбросит ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ PharException.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с phar-Π°Ρ€Ρ…ΠΈΠ²Π°ΠΌΠΈ Π½Π° основС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° tar ΠΌΠ΅Ρ‚ΠΎΠ΄ выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ BadMethodCallException, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сТатиС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ tar-Π°Ρ€Ρ…ΠΈΠ²Π° Π½Π΅ поддСрТиваСтся Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»Π°. Для сТатия Ρ†Π΅Π»ΠΎΠ³ΠΎ phar-Π°Ρ€Ρ…ΠΈΠ²Π° Π½Π° основС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° tar ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Phar::compress().

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с phar-Π°Ρ€Ρ…ΠΈΠ²Π°ΠΌΠΈ Π½Π° основС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² zip ΠΈΠ»ΠΈ phar ΠΌΠ΅Ρ‚ΠΎΠ΄ распаковываСт всС Ρ„Π°ΠΉΠ»Ρ‹ Π² Phar-Π°Ρ€Ρ…ΠΈΠ²Π΅. Для распаковки Ρ„Π°ΠΉΠ»ΠΎΠ² этим ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ потрСбуСтся Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ zlib ΠΈΠ»ΠΈ bzip2, Ссли Ρ„Π°ΠΉΠ»Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π°Ρ€Ρ…ΠΈΠ²Π° сТали ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ bzip2 ΠΈΠ»ΠΈ zlib. Как ΠΈ Π² случаС с Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ содСрТаниС phar-Π°Ρ€Ρ…ΠΈΠ²Π°, для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° потрСбуСтся ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ INI-ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ phar.readonly.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

Π‘ΠΈΠ³Π½Π°Ρ‚ΡƒΡ€Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ содСрТит ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.

Ошибки

ΠœΠ΅Ρ‚ΠΎΠ΄ выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ BadMethodCallException, Ссли INI-пСрСмСнная phar.readonly Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ zlib нСдоступСн ΠΈΠ»ΠΈ Ссли Ρ„Π°ΠΉΠ»Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π°Ρ€Ρ…ΠΈΠ²Π° сТали ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ bzip2, Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ bzip2 ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Ρ‘Π½.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ #1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ распаковки phar-Π°Ρ€Ρ…ΠΈΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Phar::decompressFiles()

<?php

$p
= new Phar('/ΠΏΡƒΡ‚ΡŒ/ΠΊ/my.phar', 0, 'my.phar');

$p['myfile.txt'] = 'ΠΏΡ€ΠΈΠ²Π΅Ρ‚';
$p['myfile2.txt'] = 'ΠΏΡ€ΠΈΠ²Π΅Ρ‚';

$p->compressFiles(Phar::GZ);

foreach (
$p as $file) {
var_dump($file->getFileName());
var_dump($file->isCompressed());
var_dump($file->isCompressed(Phar::BZ2));
var_dump($file->isCompressed(Phar::GZ));
}

$p->decompressFiles();

foreach (
$p as $file) {
var_dump($file->getFileName());
var_dump($file->isCompressed());
var_dump($file->isCompressed(Phar::BZ2));
var_dump($file->isCompressed(Phar::GZ));
}

?>

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°:

string(10) "myfile.txt"
int(4096)
bool(false)
bool(true)
string(11) "myfile2.txt"
int(4096)
bool(false)
bool(true)
string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false)

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

  • PharFileInfo::getCompressedSize() - ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° дискС с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ сТатия
  • PharFileInfo::isCompressed() - ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, сТат Π»ΠΈ Ρ„Π°ΠΉΠ»
  • PharFileInfo::compress() - Π‘ΠΆΠΈΠΌΠ°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ» ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ zlib ΠΈΠ»ΠΈ bzip2
  • PharFileInfo::decompress() - РаспаковываСт Phar-Ρ„Π°ΠΉΠ» Π² phar-Π°Ρ€Ρ…ΠΈΠ²Π΅
  • Phar::canCompress() - ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ phar сТатиС с использованиСм zlib ΠΈΠ»ΠΈ bzip2
  • Phar::isCompressed() - Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Phar::GZ ΠΈΠ»ΠΈ PHAR::BZ2, Ссли phar-Π°Ρ€Ρ…ΠΈΠ² сТат Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ (.tar.gz/tar.bz ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅)
  • Phar::compressFiles() - Π‘ΠΆΠΈΠΌΠ°Π΅Ρ‚ всС Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ Phar-Π°Ρ€Ρ…ΠΈΠ²Π΅
  • Phar::getSupportedCompression() - Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² сТатия
  • Phar::compress() - Π‘ΠΆΠΈΠΌΠ°Π΅Ρ‚ вСсь Phar-Π°Ρ€Ρ…ΠΈΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Gzip- ΠΈΠ»ΠΈ Bzip2-сТатия
  • Phar::decompress() - РаспаковываСт вСсь Phar-Π°Ρ€Ρ…ΠΈΠ²
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ добавляли примСчания для страницы