Phar簡介:
Phar 歸檔的概念來自Java™ 技術的JAR 歸檔,它允許使用單一檔案打包應用程序,這個檔案包含執行應用程式所需的所有東西。該文件不同於單一可執行文件,後者通常由程式語言生成,例如 C,因為該文件實際上是一個歸檔文件而非編譯過的應用程式。因此 JAR 文件實際上包含組成應用程式的文件,但是考慮到安全性性,不對這些文件進行仔細區分。 Phar 擴充正是基於類似的理念,但在設計時主要針對 PHP 的 Web 環境。同樣,與 JAR 歸檔不同的是,Phar 歸檔可由 PHP 本身處理,因此不需要使用額外的工具來建立或使用。
Phar 擴充功能對 PHP 來說並不是一個新鮮的概念。它最初使用 PHP 編寫並被命名為 PHP_Archive,然後在 2005 年被添加到 PEAR 庫。然而在實際中,解決這一問題的純 PHP 解決方案非常緩慢,因此 2007 年重新編寫為純 C 語言擴展,同時添加了使用 SPL 的ArrayAccess 物件遍歷 Phar 歸檔的支援。自那時起,人們做了大量工作來改善 Phar 歸檔的表現。
建立 Phar
建立 Phar 檔案需要執行若干步驟。所有步驟需要用到某種形式的 PHP 指令完成創建,因為不存在用來建立歸檔的獨立工具。
下面這篇文章主要給大家介紹了關於PHP中phar包使用的相關資料,文中介紹的還是相對比較詳細的,需要的朋友們下面來一起看看吧。
前言
PHP5.3之後支援了類似Java的jar包,名為phar。用來將多個PHP檔案打包為一個檔案。
首先需要修改php.ini配置將phar的readonly關閉,預設是不能寫phar套件的,include是預設開啟的。
phar.readonly => On
建立一個phar壓縮套件
<?php $phar = new Phar('swoole.phar'); $phar->buildFromDirectory(DIR.'/../', '/\.php$/'); $phar->compressFiles(Phar::GZ); $phar->stopBuffering(); $phar->setStub($phar->createDefaultStub('lib_config.php'));
new Phar
的參數是壓縮套件的名稱。 buildFromDirectory指定壓縮的目錄,第二個參數可透過正規化來制定壓縮檔案的副檔名。
Phar::GZ
表示使用gzip來壓縮此檔案。也支援bz2壓縮。參數修改為 PHAR::BZ2
即可。
setSub用來設定啟動載入的檔案。預設會自動載入並執行 lib_config.php。
執行此程式碼後,即產生一個swoole.phar檔案。
使用phar壓縮套件
<?php include 'swoole.phar'; include 'swoole.phar/code/page.php';
使用phar可以很方便的打包你的程式碼,整合部署到線上機器。
以上是php 中phar包的使用教學詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!