PharData::compressFiles

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

PharData::compressFiles β€” Π‘ΠΆΠ°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ tar/zip-Π°Ρ€Ρ…ΠΈΠ²Π΅

ОписаниС

public function PharData::compressFiles(int $compression): void

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

Для Zip-Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ² этот ΠΌΠ΅Ρ‚ΠΎΠ΄ соТмёт всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ сТатия. Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ zlib ΠΈΠ»ΠΈ bzip2, Π² зависимости ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° сТатия. Π’Π°ΠΊΠΆΠ΅, Ссли Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΈ сТаты, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π±Ρ‹Π» Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½, ΠΈΠ½Π°Ρ‡Π΅ Π½Π΅ удастся ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

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

compression

Одна ΠΈΠ· констант: Phar::GZ, Phar::BZ2 ΠΈΠ»ΠΈ Phar::NONE, для ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ сТатия.

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

Ѐункция Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ значСния послС выполнСния.

Ошибки

ВыбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ BadMethodCallException Ссли Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π° INI-опция phar.readonly, Ссли отсутствуСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ zlib ΠΈΠ»ΠΈ bzip2.

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ #1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования PharData::compressFiles()

<?php
$p
= new Phar('/path/to/my.phar', 0, 'my.phar');
$p['myfile.txt'] = 'hi';
$p['myfile2.txt'] = 'hi';
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->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));
}
?>

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

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

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

  • 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 ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅)
  • PharData::decompressFiles() - РаспаковываСт всС Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ zip-Π°Ρ€Ρ…ΠΈΠ²Π΅
  • Phar::getSupportedCompression() - Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² сТатия
  • PharData::compress() - Π‘ΠΆΠΈΠΌΠ°Π΅Ρ‚ вСсь Π°Ρ€Ρ…ΠΈΠ² tar/zip, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ сТатиС Gzip ΠΈΠ»ΠΈ Bzip2
  • PharData::decompress() - Π Π°ΡΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ вСсь Phar-Π°Ρ€Ρ…ΠΈΠ²
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

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

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