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批量生成缩略图的代码
Jul 19 PHP
比file_get_contents稳定的curl_get_contents分享
Jan 11 PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 PHP
php上传文件中文文件名乱码的解决方法
Nov 01 PHP
Codeigniter购物车类不能添加中文的解决方法
Nov 29 PHP
[原创]php获取数组中键值最大数组项的索引值
Mar 17 PHP
php开发中的页面跳转方法总结
Apr 26 PHP
php序列化函数serialize() 和 unserialize() 与原生函数对比
May 08 PHP
深入浅析php中sprintf与printf函数的用法及区别
Jan 08 PHP
PHP中Laravel 关联查询返回错误id的解决方法
Apr 01 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
php 解析非标准json、非规范json
Apr 01 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生成静态页
2006/11/25 PHP
记录PHP错误日志 display_errors与log_errors的区别
2012/10/09 PHP
php加密解密实用类分享
2014/01/07 PHP
利用Laravel事件系统如何实现登录日志的记录详解
2017/05/20 PHP
CakePHP框架Model函数定义方法示例
2017/08/04 PHP
解密效果
2006/06/23 Javascript
js 固定悬浮效果实现思路代码
2013/08/02 Javascript
jQuery中校验时间格式的正则表达式小结
2013/09/22 Javascript
jquery实现兼容浏览器的图片上传本地预览功能
2013/10/14 Javascript
jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
2014/05/22 Javascript
jQuery动画效果图片轮播特效
2016/01/12 Javascript
使用jquery.qrcode.min.js实现中文转化二维码
2016/03/11 Javascript
JS Array创建及concat()split()slice()的使用方法
2016/06/03 Javascript
js实现上传图片预览方法
2016/10/25 Javascript
ejsExcel模板在Vue.js项目中的实际运用
2018/01/27 Javascript
微信小程序实现YDUI的ScrollNav组件
2018/02/02 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
基于layui数据表格以及传数据的方式
2018/08/19 Javascript
VUE 项目在IE11白屏报错 SCRIPT1002: 语法错误的解决
2020/09/27 Javascript
vue3.0中使用element的完整步骤
2021/03/04 Vue.js
Python实现调用另一个路径下py文件中的函数方法总结
2018/06/07 Python
python 正确保留多位小数的实例
2018/07/16 Python
对python 操作solr索引数据的实例详解
2018/12/07 Python
Python 解决OPEN读文件报错 ,路径以及r的问题
2019/12/19 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
2020/02/06 Python
详解canvas在圆弧周围绘制文本的两种写法
2018/05/22 HTML / CSS
friso美素佳儿官方海外旗舰店:荷兰原产原罐
2017/07/03 全球购物
自考毕业自我鉴定范文
2013/10/27 职场文书
物流专业大学生的自我鉴定
2013/11/13 职场文书
中专生自我鉴定书范文
2013/12/28 职场文书
初中生操行评语大全
2014/04/24 职场文书
企业仓管员岗位职责
2014/06/15 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
100句人生哲理语录集锦:强者征服今天,懒汉坐等明天
2019/10/18 职场文书
HTML+CSS 实现顶部导航栏菜单制作
2021/06/03 HTML / CSS
MySQL约束超详解
2021/09/04 MySQL