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文件
使用startBuffering来打开缓冲,对文件修改,使用缓冲的好处是不用每次修改都保存文件,提升了效率。
$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');上面代码用来添加文档,添加了4个文档。最后一个time.php在test目录下面。
2.3 phar文件存根
文件存根是phar最开始运行的一段代码。
用setStub方式来创建
$p->setStub("最后关闭缓冲区
$p->stopBuffering();运行后,会在当前目录生成一个myphar.phar文件。
3. Phar文档使用
phar文档很方便的集成到其他应用程序中。使用时跟单个php文件一样看待,直接 include即可。
一般有下面两种方式:
include 'myphar.phar';这样把phar中所有的文件都引入了。
include 'phar://myphar.phar/test/time.php';这个只把test目录下的time.php文件引入了。
引入后可以直接使用原php文件中变量。
还可以直接读取:
echo file_get_contents('phar://my.phar/file.txt');这个会输出 hi。
地址:http://blog.csdn.net/yonggang7/article/details/24142725
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
点击阅读全文
相关课程推荐
《javascript初级视频教程》是JavaScript的入门课程,旨在让大家认识,了解JavaScript的常见概念
jQuery 很容易学习,希望通过我们的《jquery 基础视频教程》可以帮助大家来更好的学习jQuery。 jQuery 是一个 JavaScript 库,简化了 JavaScript 编程。
jQuery教程36321次播放
《javascript三级联动视频教程》介绍了javascript开发的三级联动功能,该功能在日常使用中还是经常能用的到的一个。
javascript是运行在浏览器上的脚本语言,连续多年,被评为全球最受欢迎的编程语言。是前端开发必备三大法器中,最具杀伤力。如果前端开发是降龙十八掌,好么javascript就是第18掌:亢龙有悔。没有它,你的前端生涯是不完整的。《php.cn独孤九贱(3)-JavaScript视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了javascript知识。
jQuery是一个快速、简洁的JavaScript框架。设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等,是全球最流行的前端开发框架之一。PHP中文网根据最新版本,独家录制jQuery最新视频教程,回馈PHP中文网的新老用户。
jQuery教程83464次播放
全部评论我要评论
取消发布评论发送
发布
1/1