PHP中phar包的使用教程
前言
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中phar包的使用教程
前言 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-&g
-
php 中phar包的使用教程详解
修改配置文件: vim /usr/local/php/etc/php.ini [Phar] phar.readonly = Off 压缩: a. 创建压缩脚本: vim compress.php <?php $exts = array( '*', ); $dir = __DIR__; $file = 'test.phar'; $phar = new Phar(__DIR__ . '/' . $file, FilesystemIterator::CURRENT_AS_FILEINFO | File
-
python中numpy包使用教程之数组和相关操作详解
前言 大家应该都有所了解,下面就简单介绍下Numpy,NumPy(Numerical Python)是一个用于科学计算第三方的Python包. NumPy提供了许多高级的数值编程工具,如:矩阵数据类型.矢量处理,以及精密的运算库.专为进行严格的数字处理而产生.下面本文将详细介绍关于python中numpy包使用教程之数组和相关操作的相关内容,下面话不多说,来一起看看详细的介绍: 一.数组简介 Numpy中,最重要的数据结构是:多维数组类型(numpy.ndarray) ndarray由两部分组成
-
Python中Numpy包的安装与使用方法简明教程
本文实例讲述了Python中Numpy包的安装与使用方法.分享给大家供大家参考,具体如下: Numpy包的安装 准备工作 1. Python安装 2. pip安装(如使用pip安装命令:pip install numpy) 3. 将pip所在的文件夹添加到环境变量path路径中 4. 下载相应的Numpy安装包,.whl格式.下载链接. 以上准备工作准备完毕之后,进行Numpy安装,先进入whl安装包的存放目录.比如在C盘: cd C:\ 再使用命令行安装: pip install numpy文
-
GO语言中通道和sync包的使用教程分享
目录 GO通道和 sync 包的分享 通道是什么 通道能做什么 通道有哪几种 无缓冲通道 有缓冲的通道 单向通道 如何创建和声明一个通道 声明通道 初始化通道 如何操作 channel 通道异常情况梳理 每一种通道的DEMO实战 无缓冲通道 有缓冲通道 单向通道 关闭通道 总结 GO通道和 sync 包的分享 我们一起回顾一下上次分享的内容: GO协程同步若不做限制的话,会产生数据竞态的问题 我们用锁的方式来解决如上问题,根据使用场景选择使用互斥锁 和 读写锁 比使用锁更好的方式是原子操作,但是
-
利用RJB在Ruby on Rails中使用Java代码的教程
开始之前 关于本教程 Ruby on Rails (Rails) 是用 Ruby 编写的一个 full-stack Web 应用程序框架,而 Ruby 是一种功能丰富的.免费的.可扩展的.可移植的.面向对象的脚本编制语言.Rails 在 Web 应用程序开发人员之间非常流行.通过它,可以快速有效地开发 Web 应用程序,并将其部署到任何 Web 容器中,例如 IBM? WebSphere? 或 Apache Tomcat. 在 Rails 和类似的 Web 应用程序开发框架出现之前,用于 Web
-
SpringMVC 中配置 Swagger 插件的教程(分享)
一.简介 Swagger的目标是为REST API定义一个与语言无关的标准接口,允许用户发现和理解计算机服务的功能,而无需访问源代码.当通过Swagger正确定义时,用户可以用最少量的实现逻辑理解远程服务并与之交互.类似于低级编程所做的接口. 二.实现步骤 1.添加 Maven 依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifact
-
在 CentOS 7 中安装 MySQL 8 的教程详解
准备 本文环境信息: 软件 版本 CentOS CentOS 7.4 MySQL 8.0.x 安装前先更新系统所有包 sudo yum update 安装 1. 添加 Yum 包 wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm # 或者 wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm sudo yum up
-
mysql 5.7.16 ZIP包安装配置教程
本文为大家分享了mysql 5.7.16 ZIP包安装配置教程,供大家参考,具体内容如下 一.登入官网下载免费社区版 1.下载网址 2.点击download 3.下载完毕后新建文件夹命名MySQL(我选择解压到D:\Program Files\MySQL) 4.管理员打开cmd,切换到bin目录下:(或者配置MySQL环境变量) 输入:mysqld --initialize 并回车.(初始化MySQL) 5.执行完毕后我们会看到D:\Program Files\MySQL目录下多出个 6.cm
-
java 中maven pom.xml文件教程详解
maven pom.xml文件教程详解,具体内容如下所示: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.x
随机推荐
- AngularJS ng-bind-html 指令详解及实例代码
- GitHub Eclipse配置使用教程详解
- Java 大小写最快转换方式实例代码
- Oracle 函数大全
- python出现"IndentationError: unexpected indent"错误解决办法
- PHP后台微信支付和支付宝支付开发
- python类定义的讲解
- Linux下控制(统计)文件的生成的C代码实现
- 教您修复mysql数据库的方法
- DOM节点的替换或修改函数replaceChild()用法实例
- 关于WPF使用MultiConverter控制Button状态的详细介绍
- js获取当前select 元素值的代码
- 把spring boot项目发布tomcat容器(包含发布到tomcat6的方法)
- Android 静默安装实现方法
- java使用swt显示图片示例分享
- Winform在DataGridView中显示图片
- 达到良好的网站优化效果需要注意的十点小结
- webpack打包js文件及部署的实现方法
- JS浅拷贝和深拷贝原理与实现方法分析
- vue使用Element组件时v-for循环里的表单项验证方法
