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 相关文章推荐
收集的php编写大型网站问题集
Mar 06 PHP
snoopy PHP版的网络客户端提供本地下载
Apr 15 PHP
PHP无敌近乎加密方式!
Jul 17 PHP
PHP取得一个类的属性和方法的实现代码
May 22 PHP
PHP使用array_merge重新排列数组下标的方法
Jul 22 PHP
ThinkPHP 模板substr的截取字符串函数详解
Jan 09 PHP
php实现批量上传数据到数据库(.csv格式)的案例
Jun 18 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
ThinkPHP3.2.3框架邮件发送功能图文实例详解
Apr 23 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
Nov 23 PHP
PHP基于openssl实现非对称加密代码实例
Jun 19 PHP
如何在Laravel之外使用illuminate组件详解
Sep 20 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+mysql留言本源码
2009/11/11 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
Javascript操纵Cookie实现购物车程序
2007/02/15 Javascript
javascript获取当前ip的代码
2009/05/10 Javascript
[原创]IE view-source 无法查看看源码 JavaScript看网页源码
2009/07/19 Javascript
Domino中运用jQuery读取视图内容的方法
2009/10/21 Javascript
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
2013/11/14 Javascript
js菜单点击显示或隐藏效果的简单实例
2014/01/13 Javascript
setinterval()与clearInterval()JS函数的调用方法
2015/01/21 Javascript
3个可以改善用户体验的AngularJS指令介绍
2015/06/18 Javascript
基于JavaScript实现手机短信按钮倒计时(超简单)
2015/12/30 Javascript
jQuery调用Webservice传递json数组的方法
2016/08/06 Javascript
JavaScript实现横线提示输入验证码随输入验证码输入消失的方法
2016/09/24 Javascript
nodejs的HTML分析利器node-jquery用法浅析
2016/11/08 NodeJs
详解从零搭建 vue2 vue-router2 webpack3 工程
2017/11/22 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
JavaScript中判断为整数的多种方式及保留两位小数的方法
2019/09/09 Javascript
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
jQuery实现简单弹幕效果
2019/11/28 jQuery
在Vue中使用Viser说明(基于AntV-G2可视化引擎)
2020/10/28 Javascript
Python 元类使用说明
2009/12/18 Python
Python第三方库的安装方法总结
2016/06/06 Python
Python cookbook(数据结构与算法)从字典中提取子集的方法示例
2018/03/22 Python
matplotlib subplots 设置总图的标题方法
2018/05/25 Python
pyqt 实现在Widgets中显示图片和文字的方法
2019/06/13 Python
超实用的 30 段 Python 案例
2019/10/10 Python
python 爬取B站原视频的实例代码
2020/09/09 Python
纯CSS3+DIV实现小三角形边框效果的示例代码
2020/08/03 HTML / CSS
Fossil美国官网:化石手表、手袋、首饰及配饰
2019/02/17 全球购物
澳大利亚当地社区首选的光学商店:1001 Optical
2019/08/24 全球购物
小学班级口号
2014/06/09 职场文书
本科毕业生求职信
2014/06/15 职场文书
综治工作汇报材料
2014/10/27 职场文书
学生评语集锦
2015/01/04 职场文书
办公室岗位职责范本
2015/04/11 职场文书