1. 程式人生 > >php使用phar進行壓縮/解壓

php使用phar進行壓縮/解壓

src RoCE ges iter size watermark text rect tex

  • 修改配置文件:
    vim /usr/local/php/etc/php.ini
    [Phar]
    phar.readonly  =  Off
  • 壓縮:
    a. 創建壓縮腳本:
    vim compress.php
    <?php
    $exts = array(
            ‘*‘,
        );
    $dir = __DIR__;
    $file = ‘test.phar‘;
    $phar = new Phar(__DIR__ . ‘/‘ . $file, FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::KEY_AS_FILENAME, $file);
    $phar->startBuffering();
    foreach ($exts as $ext) {
    $phar->buildFromDirectory($dir, ‘/\.‘ . $ext . ‘$/‘);
    }
    $phar->delete(‘build.php‘);
    $phar->setStub($phar->createDefaultStub(‘index.php‘));
    $phar->stopBuffering();
    echo "打包完成".PHP_EOL;

    b. 執行壓縮腳本:

    php  /home/lee/php/compress.php

    技術分享圖片
    c. 查看壓縮包:

    ll  /home/lee/php

    技術分享圖片

  • 解壓:
    a. 創建解壓腳本:
    vim /home/lee/php/depress.php
    <?php
    define(‘ROOT‘,__DIR__);
    $dir = ROOT.‘/extract‘;
    if(!is_dir($dir)){
    @mkdir($dir);
    }
    $phar = new Phar(ROOT.‘/test.phar‘);
    $phar->extractTo($dir,null,true);
    echo "解壓完成".PHP_EOL;

    b. 執行解壓腳本:

    php  /home/lee/php/depress.php

    技術分享圖片
    c. 查看解壓文件:

    ll  /home/lee/php/extract

    技術分享圖片

  • php使用phar進行壓縮/解壓