根據一個開源工具得到的靈感,使用流打包,並使用token_get_all移除了所用PHP檔案的空白。現在打包出來只有93k了。謝謝關注。
我一個簡單的檔案,加上一個symfony的process包,打包出來竟有125M之巨,而composer那麼多檔案打包出來只有1.6M,百思不得其解。附上打包代碼:
getMessage(), PHP_EOL;} catch (BadMethodCallException $e) { echo $e->getMessage(), PHP_EOL;}e('building...');$phar->buildFromDirectory(__DIR__);e('remove unused files...');array_walk($ignoreFiles, function ($file) use ($phar) { $phar->delete($file);});e('set stub...');$phar->setStub($phar->createDefaultStub('deploy.php', 'deploy.php'));e('compress...');$phar->compressFiles(Phar::BZ2);e('build done.');function e($string){ echo $string, PHP_EOL;}
回複內容:
根據一個開源工具得到的靈感,使用流打包,並使用token_get_all移除了所用PHP檔案的空白。現在打包出來只有93k了。謝謝關注。
我一個簡單的檔案,加上一個symfony的process包,打包出來竟有125M之巨,而composer那麼多檔案打包出來只有1.6M,百思不得其解。附上打包代碼:
getMessage(), PHP_EOL;} catch (BadMethodCallException $e) { echo $e->getMessage(), PHP_EOL;}e('building...');$phar->buildFromDirectory(__DIR__);e('remove unused files...');array_walk($ignoreFiles, function ($file) use ($phar) { $phar->delete($file);});e('set stub...');$phar->setStub($phar->createDefaultStub('deploy.php', 'deploy.php'));e('compress...');$phar->compressFiles(Phar::BZ2);e('build done.');function e($string){ echo $string, PHP_EOL;}
我覺得你可以將格式轉換為zip;然後通過壓縮軟體查看歸檔內容;這樣你可以直觀的看到歸檔中各組件大小;
$phar->convertToExecutable(Phar::ZIP);
希望可以幫到你