php 中phar包的使用教程详解

yipeiwu_com6年前PHP代码库

修改配置文件:

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 | FilesystemIterator::KEY_AS_FILENAME, $file);
$phar->startBuffering();
foreach ($exts as $ext) {
$phar->buildFromDirectory($dir, '/\.' . $ext . '$/');
}
$phar->delete('build.php');
$phar->setStub($phar->createDefaultStub('index.php'));
$phar->stopBuffering();
echo "打包完成".PHP_EOL;

b. 执行压缩脚本:

php /home/lee/php/compress.php


c. 查看压缩包:

ll /home/lee/php

解压:

a. 创建解压脚本:

vim /home/lee/php/depress.php

<?php
define('ROOT',__DIR__);
$dir = ROOT.'/extract';
if(!is_dir($dir)){
@mkdir($dir);
}
$phar = new Phar(ROOT.'/test.phar');
$phar->extractTo($dir,null,true);
echo "解压完成".PHP_EOL;

b. 执行解压脚本:

php /home/lee/php/depress.php


c. 查看解压文件:

ll /home/lee/php/extract

相关文章

PHP 访问数据库配置通用方法(json)

提取一种对数据库配置的通用方式 目的是通过通用类访问配置文件的方式,提供对数据库连接的动态获取和设置,使开发时和生产应用时都能够提供灵活的、简化的、解耦的操作方式。比如在配置文件中配置...

PHP 编程请选择正确的文本编辑软件

如果您在修改任何PHP文件后发生:     不能登入或者不能登出;     页顶出现一条空白;  ...

PHP错误抑制符(@)导致引用传参失败Bug的分析

看下面的例子: 复制代码 代码如下: <?php $array = array(1,2,3); function add (&$arr) { $arr[] = 4; } add(@...

php 空格,换行,跳格使用说明

首先说说\n,\r,\t \n 软回车: 在Windows 中表示换行且回到下一行的最开始位置 在Linux、unix 中只表示换行,但不会回到下一行的开始位置。 \r 软空格: 在Li...

PHP编码转换函数 自动转换字符集支持数组转换

复制代码 代码如下: // 自动转换字符集 支持数组转换 function auto_charset($fContents, $from='gbk', $to='utf-8') { $f...