php 什么是PEAR?(第三篇)


Posted in PHP onMarch 19, 2009

安装完基本套件后,当开发者需要使用基本套件以外的其他套件时,会需要安装套件,若不需要某个套件时,就会想要移除套件,若套件版本过於老旧,则需要升级套件,也就是?开发者需要一套PEAR套件的管理系统。
在Windows作业系统下的套件安装与管理可以有两种方式,一种是使用Web的管理介面,另一种足使用「套件指令」。笔者较为推荐后者,因为执行的速度较快,但若您对指令有畏惧感,也可以用第一种来轻松管理套件。
用web介面管理套件
Web的套件管理在上一个单元安装基本套件时.就已经顺便安装好了。上一个单元中安装完PEAR基本套件的画面,在最下方会出现Start Web Rrontend of the PEAR instoller>>这个连结,点选后即可进入套件管理的Web介面,如下图:
管理介面网页档的所在位置,就是上一个单元的第9个设定项Filename of WebFrontend,我使用的范例是设为c :AppServ\www\pearindex.php,记得将它加入我的最爱。另外,先前的pear.php挡可以?h除了。
请注意上图画面的上方有3个连结,所代表的意义分?e是显示已安装套件(list installed packages) 、显示所有套件(list all packages)、显示尚未安装套件(list not installed packages)。
一进入套件管理Web介面时出现的是显示已安装套件的画面,画面中有套件名称,套件功能的概略?⑹鲇胩准?陌姹颈嗪牛?ocal代表目前安装版本的编号,Latest代表PEAR官网上的最新版本的编号。
若目前安装的不是最新版本时,会出现一个upgrade的图案,按下图案即可升级套件,版本编号旁的回收筒图案若按下,会将套件移除,请大家特?e注意。
接著我们进入显示尚未安装套件画面
与显示已安装套件的画面大同小?,比较下同的是?]有了垃圾桶图案,取旧代之是一个╂图案,意思是使用者只要按下图案即可安装该套件。
安装失败? 使用者安装时有时会出现该怎?办呢?
通常会安装失败问题大多出在套件的「相依性」,何谓「相依性」? 简单的?就是有些套件需要先安装其他套件才可使用,所以安装此套件前须先安装相依的套件,大家可点选画面中的回收筒图案,可观看套件的详细讯息,其中会提到与套件相依的其它套件。如下图:
例如:上图中,笔者安装Cache套件前,点选(!+ )图案,观看套件的详细资讯时,在最下面的Packages that depend on Cache中发现Net_Dict、Image Graph等5个套件与Cache套件相依,所以须先安装cache套件才可安装这5个套件。否则,直接安装这些套件会出现”安装失败”的讯息视窗。
套件的管理利用Web界面实在是简单又方便,但速度稍嫌缓慢,而且Web的使用者必须对放置套件的资料夹(本范例为c:AppServ\php\PEAR)具有写入的权限。
笔者推荐用另一种管理方法,推荐的理由是因为它下载套件更快速,管理功能更??大,但缺点是需要打指令。
用指令管理PEAR套件
首先,与上一个方法一?有柘扔?ear.php网页来安装完基本套件,虽然安装后已有Web的套件管理介面可用,可是请使用者备而不用,接著到桌面的我的电脑图案,按下右键,出现选单,请选择「内容」,会跳出系统内容视窗,在第4个名为进阶的标签中点选环境变数按钮,如下图:
出现?境变数视窗,请点选下方系统变数窗格中的Path,按编辑钮,会出现编辑系统变数视窗,请在变数值栏位最后加上“;C:AppServ\php”,请注意,“C:”前须有一个分号(“;”)喔,编辑完按确定钮关闭视窗,如下图:
只要完成这个步骤,就可以使用指令来管理PEAR套件了。
我们来做个测试好了,请选择「开始/所有程式(程式集)/附属应用程式/命令提示字元」。在 > 后输入:
这个指令后按下键盘上的Enter键,将会出现所有PEAR管理指令与?明,如下画面:
注意:PEAR指令在Windows系统中使用大写和小写皆可
我接著根据上图的?明,试验一下其他指令。例如若要显示所有已安装套件,只要输入“pear list”即可,画面将会出现目前已安装套件的名称、套件编号、套件状态
指令失效?别急,若发现指令失效,只要到C:WINDOWS下找到php.ini档并用任何一中文字编辑器将它打开,将原本的“register_argc_argv=OFF”改为“register_argc_argv=ON”,存档后,将命令提示字元视窗关闭后重开,即可以无障碍地使用PEAR指令了。
就可以进行安装,请注意,套件名称使用大小写都可以,若套件状态为stable版则不用输入套件编号,例如:笔者要安装benchmark套件,只要输入
当最后一行出现“install ok:Benchmark 1.2.1”即代表安装成功。
但若安装时出现相依性的问题而安装失败时,该怎?办呢? 例如笔者安装Html_QuickForm套件时.出现需要先安装Html_Common套件的讯息,所以我只好再输入“pear install html_common”.这个指令,终於出现“install ok”的字?恿恕
接著再安装Html_QuickForm套件,如下图,即可大功告成
若您安装的是Beta或Alpha版也就是试用版的套件,请在pear install后输入完整的套件版本号码。例如,若您要安装liveuser这个套件,但这个套件目前?K?]有释出stable版,那?您需要使用以下指令:
也就是套件名称后面必须加上套件的版本编号,大家又会问,我怎?会知道套件的版本编号呢?这就请查询PEAR官方网站了。若安装的套件不是Stable版?s?]有填写套件编号,安装时会出现”安装非Stable版”的错误讯息,?K停止安装。
介绍您一个偷懒的好方法:若您一定要安装某个套件,不管它足stable版还是beta版,这时候可以使用一个指令:
例如,同?酉氚沧?iveuser套件,?s懒得去查版本编号,那就使用这?拥闹噶畎
指令中的“-f”代表??迫的意思「force」,就是不管如何都要安装就对了。
用指令移除PEAR套件
移除套件比安装简单多了,只要输入:
这?拥闹噶罴纯桑?缦峦迹杭偕栉医?瞥???enchmark套件,如下图:
最后出现“uninstall ok”代表移除套件成功了,移除套件的失败机率很低,请大家放心。
用指令升级PEAR套件
套件会有新的版本不停的释出,若要将旧套件升级成新套件也非常简单,只需要输入指令:
即可,例如:笔者若要升级名为cache的套件,只要输入:
就可以了。升级的过程与安装套件一?樱?惺被岢鱿窒嘁佬缘奈侍舛??妒О埽?耸敝灰?劝沧跋嘁捞准?涂梢粤
其它指令较少用到,我在这里不再介绍了,请大家自行观看。只要在命令提示字元视窗中输入pear指令后,就会出现指令的?明。
修改php.ini档
这是PEAR使用前最后的工作了,不管您用Web介面,还足用指令来管理套件,都需要修改php.ini档。这个档放在C:WINDOWS目?下,请用文字编辑器将它打开加入一行字如下:
加入后,记得存档,?K将Apache重新执行,这?泳涂梢粤恕4蠹矣Ω每吹某隼矗?nclude_path的值就是下载?K安装PEAR套件的所在路径,但是,为何要加入此行呢?笔者下一章会加以?明。
我们来检视一下加入这一行是否让设定值改变了。请您在c:AppServ\www中建立一个档案,名为phpinfo.php,档案内只写入一行:
接着在浏览器输入http;//127.0.0.1/phpinfo.php或http;//localhost/phpinfo.php
另外,我还建议,将php.ini档中的allowcall_time_passreference设定项的值改为On,原因我会在第6章做解释。
若一切动作?]有错误,出现的画面如上图,那么,就准备享受PEAR所带来的倍增PHP功力的?佳体验吧。

PHP 相关文章推荐
eWebEditor v3.8 商业完整版 (PHP)
Dec 06 PHP
php出现Cannot modify header information问题的解决方法大全
Apr 09 PHP
PHP 判断常量,变量和函数是否存在
Apr 26 PHP
PHP句法规则详解 入门学习
Nov 09 PHP
php引用地址改变变量值的问题
Mar 23 PHP
php中explode与split的区别介绍
Oct 03 PHP
php表单请求获得数据求和示例
May 15 PHP
windows8.1下Apache+Php+MySQL配置步骤
Oct 30 PHP
PHP Ajax实现无刷新附件上传
Aug 17 PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 PHP
PHP 文件锁与进程锁的使用示例
Aug 07 PHP
php+js实现裁剪任意形状图片
Oct 31 PHP
php 什么是PEAR?(第二篇)
Mar 19 #PHP
php 什么是PEAR?
Mar 19 #PHP
php 信息采集程序代码
Mar 17 #PHP
php cookie 登录验证示例代码
Mar 16 #PHP
php 删除cookie和浏览器重定向
Mar 16 #PHP
php cookis创建实现代码
Mar 16 #PHP
php session应用实例 登录验证
Mar 16 #PHP
You might like
一个简单的MySQL数据浏览器
2006/10/09 PHP
在PHP中读取和写入WORD文档的代码
2008/04/09 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
浅谈PHP无限极分类原理
2019/03/14 PHP
PHP框架实现WebSocket在线聊天通讯系统
2019/11/21 PHP
Gambit vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
artDialog双击会关闭对话框的修改过程分享
2013/08/05 Javascript
jQuery及JS实现循环中暂停的方法
2015/02/02 Javascript
nodejs实现获取某宝商品分类
2015/05/28 NodeJs
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
Angular2  NgModule 模块详解
2016/10/19 Javascript
Node.js通过身份证号验证年龄、出生日期与性别方法示例
2017/03/09 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
2018/11/20 Javascript
微信小程序实现顶部导航特效
2019/01/28 Javascript
vue组件系列之TagsInput详解
2020/05/14 Javascript
vue绑定数字类型 value为数字的实例
2020/08/31 Javascript
[36:20]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.17
2020/12/18 DOTA
使用python的chardet库获得文件编码并修改编码
2014/01/22 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
python中使用%与.format格式化文本方法解析
2017/12/27 Python
django执行数据库查询之后实现返回的结果集转json
2020/03/31 Python
TensorFlow实现模型断点训练,checkpoint模型载入方式
2020/05/26 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
2020/06/15 Python
python多线程爬取西刺代理的示例代码
2021/01/30 Python
canvas像素点操作之视频绿幕抠图
2018/09/11 HTML / CSS
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
英国第一的市场和亚马逊替代品:OnBuy
2019/03/16 全球购物
英国最大的在线蜡烛商店:Candles Direct
2019/03/26 全球购物
法国房车租赁网站:Yescapa
2019/08/26 全球购物
大学应届毕业生个人求职信
2013/09/23 职场文书
副总经理工作职责
2013/11/28 职场文书
劳动竞赛口号
2014/06/16 职场文书
违纪开除通知书
2015/04/25 职场文书
健康证明
2015/06/19 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
15个值得收藏的JavaScript函数
2021/09/15 Javascript