php pear学习
一,什么是 PEAR? PEAR是PHP的官方开源类库, PHP Extension and Application Repository的缩写。Pear在英文中是梨子的意思。PEAR将PHP程序开发过程中常用的功能编写成类库,涵盖了页面呈面、数据库访问、文件操作、数据结构、缓存操作、网络协议等许多方面,用户可以很方便地使用。 二,为什么要使用PEAR? PHP是一个非常优秀的脚本语言,简洁、高效,随着4.0的发布,越来越多的人使用它来进行动态网站的开发,可以说,PHP已经成为最优秀的INTERNET开发语言之一,尤其对于那些需要能够快速、高效地开发中小规模的商业应用的网站开发人员,PHP是其首选的语言。 但是随着PHP的应用的不断增多,对于这些应用缺乏统一的标准和有效的管理,因此,PHP社区很难象PERL社区的人们那样方便的共享彼此的代码和应用,因为PHP缺乏象CPAN那样的统一的代码库来分类管理应用的代码模块(熟悉PERL的人都知道,CPAN是一个巨大的PERL的扩展模块仓库,编写的应用模块可以放在CPAN下面的适当的分类目录下面,其他的人可以很方便地复用,当然,你编写应用模块时候也需要遵守其中的准则。) 为此,PEAR就应运而生了,并且从4.04开始,随着PHP核心一起被分发。 三,PEAR能给我带来什么好处? 1.如前所述,PEAR按照一定的分类来管理PEAR应用代码库,你的PEAR代码可以组织到其中适当的目录中,其他的人可以方便地检索并分享到你的成果。 2.PEAR不仅仅是一个代码仓库,它同时也是一个标准,使用这个标准来书写你的PHP代码,将会增强你的程序的可读性,复用性,减少出错的几率。 3.PEAR通过提供2个类为你搭建了一个框架,实现了诸如析构函数,错误捕获功能,你通过继承就可以使用这些功能。 四,PEAR的提供目的是什么? 一个PHP用户的开源(open-sourced)代码组织库 一个代码分发和包维护和系统 一个用PHP写的标准风格 PHP 基础类(PFC) PHP扩展公共库(PECL), 更详细说明在下面 一个支持 PHP/PEAR 团体的网站,邮件列表和下载镜像 五,PEAR有哪些入门的资料可以查看? PHP PEAR官方站 http://pear.php.net/ PHP PEAR中文站 http://www.pearchina.com/ PHP PEAR手册 http://pear.phpv.net/cn/ 用PEAR来写你的下一个php程序 http://www.ibm.com/developerworks/cn/linux/sdk/php/pear1/ |
、
今天在网上看了大量关于PEAR安装的文档,包括pear.php.net里的安装介绍,因为没有真对性的安装过程,看得我有些云里雾里,不知所以然。以下是我对pear安装的一些理解。
pear文档里介绍说,只要你安装的是php 4.3.0以上的,并且没有使用“./configure flag --without-pear”选项,则pear的基础安装已经集成在系统里。其它pear包通过pear安装管理器进行安装,而安装管理器也已经在系统里。但是,在windows下如果使用installer来安装php,并没有把pear安装到系统里。如果按照.zip 打包文件安装php,可以把pear直接解压到pear目录下,但也还没有安装到系统里。 另外关于pear包在windows里安装的文档已经过时。
因此,如果是按installer安装php的话,可以这样把pear安装到系统里(如果不是用php 的installer 安装php,可以参考以下内容):
下载.zip的php安装文件,如:php-4.3.6-win32.zip。
解开其中的两个目录cli 和pear及一个文件go-pear.bat到PHP所安装的目录。
在命行下到php目录下,运行go-pear.bat(其内容其实为
cliphp.exe -d output_buffering=0 PEARgo-pear.php )它会给你安装pear命令和安装一些pear包
输入HTTP代理服务(如http://192.168.0.1:808),若无代理服务器则直接回车
当前路径缺省正确的话就按回车,如果需修改则按个修改
提示以下包会同php捆绑。选择Y
...提示使用本地包,提示安装成功
如果在php.ini里没有include_path项,则使用pear有问题,提示是否修改php.ini。回答Y,提示修改了php.ini
按回车,安装完毕,已经在php目录下创建pear.bat,以后可以使用,以及在pear目录下安装的一些pear包。可以使用php目录下的PEAR_NEV.reg方便修改环境变量,双击即可
pear list看包列表,pear help帮助文件
其实到现在才把pear安装到在Windows环境下的PHP里, include_path里有了PEAR所在目录。
另外在linux机器上,象我的虚拟主机,没有提供shell权限,用phpinfo()查看,没有任何pear的信息。但不见它使用“./configure flag --without-pear”选项。但不管怎样,PEAR包肯定是不能用的了,叫他们专门安装PEAR好象是不可能的事。如何在这样的虚似主机上使用PEAR呢?以下是我的过程:
下载所需要的包,如基础包PEAR-1.3.1.tgz和数据库包DB-1.6.2.tgz
把包解压缩到本地
在主机上的虚拟目录.htdoc或.www之外建立一个include文件夹。然后将刚才解压出来的文档上传到该目录(如DB包可以只上传DB.php和DB目录,PEAR包上传OS,PEAR,SCRIPT目录和PEAR.php文件)
因为无法修改php.ini文件,所以我们在要使用包的脚本文件上加上:
ini_set("include_path", '/var/.../includes/' . PATH_SEPARATOR . ini_get("include_path"));
?>
然后就可以使用PEAR了,如下:
require_once "DB.php";
$mime = ...
?>
好了,现在在Windows和Linux上都可以使用PHP的PEAR了。