PHP中phar包的使用教程


Posted in PHP onJune 14, 2017

前言

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 相关文章推荐
PHP4实际应用经验篇(9)
Oct 09 PHP
PHP MSSQL 存储过程的方法
Dec 24 PHP
php 高性能书写
Dec 11 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
Dec 28 PHP
php笔记之:初探PHPcms模块开发介绍
Apr 26 PHP
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
Jun 06 PHP
php字符串替换函数substr_replace()用法实例
Mar 17 PHP
php两种无限分类方法实例
Apr 21 PHP
php删除数组中重复元素的方法
Dec 22 PHP
Zend Framework教程之Zend_Db_Table用法详解
Mar 21 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
Apr 10 PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 PHP
iis 7下安装laravel 5.4环境的方法教程
Jun 14 #PHP
PHP中关键字interface和implements详解
Jun 14 #PHP
详解php中的implements 使用
Jun 13 #PHP
PHP在弹框中获取foreach中遍历的id值并传递给地址栏
Jun 13 #PHP
php 中的closure用法详解
Jun 12 #PHP
PHP依赖注入(DI)和控制反转(IoC)详解
Jun 12 #PHP
PHP正则删除HTML代码中宽高样式的方法
Jun 12 #PHP
You might like
编译php 5.2.14+fpm+memcached(具体操作详解)
2013/06/18 PHP
什么是PEAR?什么是PECL?PHP中两个容易混淆的概念解释
2015/07/01 PHP
PHP实现简单搜歌的方法
2015/07/28 PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
2016/02/26 PHP
Thinkphp框架中D方法与M方法的区别
2016/12/23 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
2020/02/21 PHP
PHP中迭代器的简单实现及Yii框架中的迭代器实现方法示例
2020/04/26 PHP
jquery json 实例代码
2010/12/02 Javascript
JavaScript日期类型的一些用法介绍
2015/03/02 Javascript
javascript原型继承工作原理和实例详解
2016/04/07 Javascript
js动态获取子复选项并设计全选及提交的实现方法
2016/06/24 Javascript
js实现百度地图定位于地址逆解析,显示自己当前的地理位置
2016/12/08 Javascript
浅析微信小程序自定义日历组件及flex布局最后一行对齐问题
2020/10/29 Javascript
JS实现页面侧边栏效果探究
2021/01/08 Javascript
在Python中使用异步Socket编程性能测试
2014/06/25 Python
python操作gmail实例
2015/01/14 Python
举例详解Python中循环语句的嵌套使用
2015/05/14 Python
Python基于Matplotlib库简单绘制折线图的方法示例
2017/08/14 Python
python 列表删除所有指定元素的方法
2018/04/19 Python
python把数组中的数字每行打印3个并保存在文档中的方法
2018/07/17 Python
在python中使用xlrd获取合并单元格的方法
2018/12/26 Python
Python通过cv2读取多个USB摄像头
2019/08/28 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
python实现人工蜂群算法
2020/09/18 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
pycharm + django跨域无提示的解决方法
2020/12/06 Python
Python 使用SFTP和FTP实现对服务器的文件下载功能
2020/12/17 Python
浅谈CSS3 动画卡顿解决方案
2019/01/02 HTML / CSS
最耐用行李箱,一箱永流传:Briggs & Riley(全球终身保修)
2017/12/07 全球购物
英国设计师泳装、沙滩装和比基尼在线精品店:Beach Cafe
2019/08/28 全球购物
酒店总经理职务说明书
2014/02/26 职场文书
《从现在开始》教学反思
2014/04/15 职场文书
《欢乐的泼水节》教学反思
2014/04/22 职场文书
2014年客房部工作总结
2014/11/22 职场文书
MySQL 重命名表的操作方法及注意事项
2021/05/21 MySQL
shell进度条追踪指令执行时间的场景分析
2022/06/16 Servers