Phar:PHP文件存档
Phar:PHP文件归档
1. Phar简介
Phar是PHP Archive缩写,将php文件归档到一个文件包。
将一个模块的文件打包成一个phar,这样方便模块整体迁移,只需将phar文件移动过去,其他环境中include即可使用。
类似于java的 .jar 文件。
php 5.3时,为php的C语言扩展,安装php时会默认安装。
在安装目录 bin下面有phar文件,通过 php -m 查看php扩展,也应该能找到。
$ .bin/phar.phar help
2. 创建Phar文件
2.1 修改php.ini配置文件
phar.readonly = 0 这个参数必须设置为0,如果为1,表示phar文档不可写。
phar.require_hash = 1 这个参数为每个phar打包的文件生成一个签名,如果发现签名有问题,则拒绝处理。防止外部注入一些不安全的脚本。
phar.cache_list 允许web server启动时预加载phar文档,提升访问速度。
2.2 创建phar对象
创建my.phar文件
<?phptry { $p = new Phar(dirname(__FILE__) . "my.phar", 0, 'my.phar');} catch (UnexpectedValueException $e) { die('Could not open my.phar');} catch (BadMethodCallException $e) { echo 'technically, this cannot happen';}
$p->startBuffering();$p['file.txt'] = 'hi'; $p['file2.txt'] = 'there';$p['file3.txt'] = 'babyface';$p['file3.txt']->setMetadata(42);$p['test/time.php'] = file_get_contents('time.php');
2.3 phar文件存根
文件存根是phar最开始运行的一段代码。
用setStub方式来创建
$p->setStub("<?php Phar::mapPhar('myphar.phar');__HALT_COMPILER();");
$p->stopBuffering();
3. Phar文档使用
phar文档很方便的集成到其他应用程序中。使用时跟单个php文件一样看待,直接 include即可。
一般有下面两种方式:
include 'myphar.phar';
include 'phar://myphar.phar/test/time.php';
引入后可以直接使用原php文件中变量。
还可以直接读取:
echo file_get_contents('phar://my.phar/file.txt');
地址:http://blog.csdn.net/yonggang7/article/details/24142725

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます
