1. 修改配置文件:
    vim path/to/php.ini
    [Phar]
    phar.readonly = off
  2. 压缩:
    vim compress.php
    <?php
    // 1. 定义需压缩的文件
    $exts = ['*'];
    // 2. 定义需压缩的文件夹
    $dir = 'path/to/project';
    // 3. 定义输出文件的名称
    $file = 'test.phar';
    // 4. 实例化类
    $phar = new Phar(__DIR__ . '/' . $file, FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::KEY_AS_FILENAME, $file);
    // 5. 执行压缩
    $phar->startBuffering();
    foreach ($exts as $ext) {
     $phar->buildFromDirectory($dir, '/\.' . $ext . '$/');
    }
    // 6. 定义入口文件
    $phar->setStub($phar->createDefaultStub('index.php'));
    // 7. 停止压缩
    $phar->stopBuffering();
    echo "打包完成".PHP_EOL;
  3. 解压:
    vim depress.php
    <?php
    // 1. 定义解压后的目录
    $dir = 'path/to/extract';
    // 2. 定义解压文件
    $phar = new Phar('test.phar');
    // 3. 执行解压
    $phar->extractTo($dir,null,true);
    echo "解压完成".PHP_EOL;
文档更新时间: 2020-08-07 18:49   作者:lee