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;
文档更新时间: 2024-04-19 15:11   作者:lee