登录 |  注册 |  繁體中文


使用Phar打包php文件

分类: php 颜色:橙色 默认  字号: 阅读(3737) | 评论(0)
PHP从 5.3开始支持phar,简单点说就是把一些文件打包起来, 也可以理解成是山寨jar。
 
使用 phar  就是把一堆文件打包成一个文件,
目的是为了 方便分发,部署,管理 ,但个人感觉用处不大,只做学习使用
 
示例:
 
首先立了一个foo目录,目录里面有Foo.class.php和index.php两个文件:
	< ?php

	// Foo.class.php

	class Foo
	{

	 public function __construct()
	 {

	 echo 'A Foo is created'

	 echo 'and the current dir is ', __DIR__;

	 }

	}

	?>

	< ?php

	// index.php

	require __DIR__.'/Foo.class.php';

	$foo = new Foo();

	
	function test()

	{

	return 'from test';

	}

	?>

然后再写一个打包脚本来生成foo.phar文件:

	< ?php

	// archive.php

	// 打包前 需要设置php.ini中 phar.readonly = off ,默认是on

	$phar = new Phar('foo.phar', 0, 'foo.phar'); 

	$phar->buildFromDirectory(__DIR__.'/foo'); 

	?> 

	 

打包之前要确保 php.ini 中的 phar.readonly=0,即允许对 phar 作修改操作。

 
上面代码会将foo目录下的所有文件 打包成一个文件。
 
 
使用 phar 包:
	< ?php

	// 引入文件
	require 'foo.phar';
	 
	// 调用一个方法
	echo test();

	?>
   
将打包好的 random.phar 当作普通文件引入即可,使用和正常脚本没什么不同。
 
 
如果只需要引入某一个文件可以这样:
	< ?php require 'phar://foo.phar/Foo.class.php'; ?>
 
 



姓 名: *
邮 箱:
内 容: *
验证码: 点击刷新 *   

回到顶部