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加速的eAccelerator dll支持文件打包下载
Sep 30 PHP
php 仿Comsenz安装效果代码打包提供下载
May 09 PHP
PHP中使用gettext来支持多语言的方法
May 02 PHP
解析PHP实现下载文件的两种方法
Jul 05 PHP
PHP实现删除非站内外部链接实例代码
Jun 17 PHP
实例讲解PHP面向对象之多态
Aug 20 PHP
php函数与传递参数实例分析
Nov 15 PHP
php+html5实现无刷新图片上传教程
Jan 22 PHP
PHP调试的强悍利器之PHPDBG
Feb 22 PHP
php观察者模式应用场景实例详解
Feb 03 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
Jul 03 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
Aug 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动态变静态原理
2006/11/25 PHP
ThinkPHP模板之变量输出、自定义函数与判断语句用法
2014/11/01 PHP
js判断浏览器的比较全的代码
2007/02/13 Javascript
document.designMode的功能与使用方法介绍
2007/11/22 Javascript
extjs两个tbar问题探讨
2013/08/08 Javascript
javascript新建标签,判断键盘输入,以及判断焦点(示例代码)
2013/11/25 Javascript
js中数组排序sort方法的原理分析
2014/11/20 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
2015/11/21 Javascript
JQuery中attr属性和jQuery.data()学习笔记【必看】
2016/05/18 Javascript
AngularJS基础 ng-switch 指令简单示例
2016/08/03 Javascript
关于Function中的bind()示例详解
2016/12/02 Javascript
js Canvas实现的日历时钟案例分享
2016/12/25 Javascript
详解JS中的立即执行函数
2017/02/24 Javascript
Node.js实现文件上传的示例
2017/06/28 Javascript
Node.js自定义实现文件路由功能
2017/09/22 Javascript
React-Router如何进行页面权限管理的方法
2017/12/06 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
javascriptvoid(0)含义以及与&quot;#&quot;的区别讲解
2019/01/19 Javascript
layui使用button按钮 点击出现弹层 弹层中加载表单的实例
2019/09/04 Javascript
Vue 数据绑定的原理分析
2020/11/16 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
[04:03]DOTA2肉山黑名单梦之声 风暴之灵中文配音鉴赏
2013/07/03 DOTA
[14:19]2018年度COSER大赛-完美盛典
2018/12/16 DOTA
python自动化测试之连接几组测试包实例
2014/09/28 Python
Python OpenCV对本地视频文件进行分帧保存的实例
2019/01/08 Python
Python 通过打码平台实现验证码的实现
2019/05/13 Python
一些关于python 装饰器的个人理解
2020/08/31 Python
css3使网页、图片变成灰色兼容大多数浏览器
2014/07/02 HTML / CSS
竞聘书模板
2014/03/31 职场文书
大学生党员承诺书
2014/05/20 职场文书
工程负责人任命书
2014/06/06 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
事业单位聘任报告
2015/03/02 职场文书
体检通知范文
2015/04/21 职场文书
2015年新教师个人工作总结
2015/10/14 职场文书