在PHP5.3以后,PHP的phar扩展也可以实现java这样的档案共功能。它允许开发者创建或者操作PHP档案文件,也就是名称的由来——PHP archive。例如在下面的代码中,它包含了两个文件:wild.php和domestic.php。为了分发应用,需要分发3个文件。如果有更多的类,要分发的文件数量更多。只分发两个文件的目的是:自身之行的脚本,且phar文件包含了所有必要的类文件。

<?php   
 include('phar://animals.phar/wild.php');    
 include('phar://animals.phar/domestic.php');    
 $test = animal();    printf("%s",$test->get_type);    
 $test1 = new \wild/animal();    
 printf("%s",$test1->get_type());    
 ?>
登录后复制

上面的代码在于include指令,它引入了animals.phar文件并全部引用这些文件。

创建一个phar文件很简单,语法如下:

phar pack -f animals.phar -c gzwild.phpdomestic.php

pack参数指明了phar程序用来创建以-f选项指定的文件名的压缩档案包,并加入wild.php和domestic.php两个文件到压缩包中。为了能够成功运行,php.ini配置文件中的phar.readonly参数需为off,如果默认值为on, 则会阻止创建新档案。

phar支持的压缩算法包括zip, gz(gzip), 和bz2(bzip2)。phar改变了PHP应用分发和打包的方式,并节省了存储空间。与java的jar包一样,无须担心性能问题,phar包只能被解析一次,在脚本开始时间占得非常小,不影响执行时间。

相关推荐:

PHP开发之归档格式phar如何使用

phar包的使用方法 PHP

PHP存档phar性能测试

以上就是phar扩展来节省空间 的方法的详细内容,更多请关注Work网其它相关文章!

09-18 13:55