打包phar檔案過大的問題。

來源:互聯網
上載者:User

根據一個開源工具得到的靈感,使用流打包,並使用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);

希望可以幫到你

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.