侯体宗的博客
  • 首页
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

PHP pear安装配置教程

php  /  管理员 发布于 7年前   373

什么是PEAR?

PEAR是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写。它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR之于PHP就像是CPAN(Comprehensive Perl Archive Network)之于Perl。

由此可见PEAR是PHP代码的仓库,在这里可以找到很多有用的代码,避免我们重复写一些功能,但是PEAR代码包并不是直接通过HTTP网站下载的,我们需要安装PEAR。

如何获取并安装PEAR

建议:下面操作在Windows 7环境下完成,同样适用于Windows XP/2003/Vista/2008系统,部分操作带有尝试性,为了避免弯路,建议先看完本文,然后再进行相关操作。

如果PHP目录下没有自带PEAR,即找不到go-pear.php文件,那么就需要我们手动下载go-pear.php文件,点击这里下载并另存为go-pear.php,这个文件放到php.exe所在的PHP安装目录下,我这里安装目录是D:\php5(下文以此目录为准),那么go-pear.php的位置应该是D:\php5\go-pear.php。

开始 C 运行,输入cmd,启动命令提示符,输入以下命令,主要是切换到go-pear.php目录下,然后执行这个PHP脚本文件:

cd D:\php5
D:
php go-pear
.php
遗憾的是可能由于我的PHP版本太新,上述操作提示失败,具体的信息如下:

Deprecated: Assigning the return value of new by reference is deprecated in D:\php5\go-pear.php on line 733

Sorry! Your PHP version is too new (5.3.8) for this go-pear.

Instead use http://pear.php.net/go-pear.phar for a more stable and current version of go-pear, more suited to your PHP version.

Thank you for your coopertion and sorry for the inconvenience!

意思是要求我们到http://pear.php.net/go-pear.phar下载go-pear.phar文件,然后取代go-pear.php再试。下载好go-pear.phar文件并放到D:\php5文件夹中,执行下面的命令:

cd D:\php5
D:
php go-pear.phar

这时出现:

Are you installing a system-wide PEAR or a local copy?
(system|local) [system] :
按回车默认system然后继续。以下是默认的pear的临时、数据、配置、测试、执行目录的设置:

Below is a suggested file layout for your new PEAR installation. Tochange individual locations, type the number in front of thedirectory. Type 'all' to change all of them or simply press Enter toaccept these locations.  1. Installation base ($prefix)     : D:\php5 2. Temporary directory for processing   : D:\php5\tmp 3. Temporary directory for downloads    : D:\php5\tmp 4. Binaries directory       : D:\php5 5. PHP code directory ($php_dir)     : D:\php5\pear 6. Documentation directory      : D:\php5\docs 7. Data directory        : D:\php5\data 8. User-modifiable configuration files directory : D:\php5\cfg 9. Public Web Files directory     : D:\php5\www10. Tests directory        : D:\php5\tests11. Name of configuration file     : C:\Windows\pear.ini12. Path to CLI php.exe       : D:\php5 1-12, 'all' or Enter to continue:

直接回车使用默认值然后继续安装。本来以为万事大吉的,可是偏偏在这里出现了错误:

Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘UTC' for '8.0/no DST' instead in phar://D:/php5/go-pear.phar/PEAR/Registry.php on line 1012
PEAR_Config::writeConfigFile fopen(‘C:\Windows\pear.ini','w') failed (fopen(C:\Windows\pear.ini): failed to open stream: Permission denied)

看样子是没有权限写入C:\Windows\pear.ini,由于我使用的是Windows 7系统,然后普通用户打开的命令提示符,在这里当然没有权限写入C:\Windows目录了,看来要另辟蹊径了。回到刚才Are you installing a system-wide PEAR or a local copy?这段,为什么不选择local copy呢?网上都是直接说默认回车选择system的,不想改写C:\Windows目录,于是我重新执行php go-pear.phar,并且选择local。

Are you installing a system-wide PEAR or a local copy?
(system|local) [system] : local
Please confirm local copy by typing 'yes' : yes

好了,这下正常了:-)

Would you like to alter php.ini ? [Y/n] :
然后就是上面这句,只有选择Y同意修改php.ini。

php.ini  include_path updated. Current include path   : .;C:\php\pearConfigured directory   : D:\php5\pearCurrently used php.ini (guess) : D:\php5\php.iniPress Enter to continue:

接着出现上面这段,看来没有什么好改的,直接回车确认即可。

到这里应该能看到Thanks for using go-pear!这句了,那么恭喜你,PEAR总算是安装成功了!

如何安装PEAR Package包

接下来让我们去PEAR网站上看看有什么需要的吧。PEAR每个包都有安装命令的提示,比如说MDB2这个包,上面已经提示使用pear install MDB2命令安装了,假设目录还是D:\php5,那么我们利用下面的命令试试:

cd D:\php5
D:
pear install MDB2
结果出现下面这个错误:

D:\php5>pear install MDB2downloading MDB2-2.4.1.tgz ...Starting to download MDB2-2.4.1.tgz (119,790 bytes)..........................done: 119,790 bytesERROR: failed to mkdir C:\php\pear\docs\MDB2\docs\examples

无法创建目录,看来又是权限问题,索性以管理员身份启动cmd命令提示符,然后重新执行上面的命令。这次总算安装成功了install ok!

另一个安装报错案例:PHP pear安装出现 Warning: require_once(Structures/Graph.php)...错误

在WINDOWS安装pear,一路无阻很顺利安装完成,接着想安装下pear email包来玩下,但接下来却报:

Warning: require_once(Structures/Graph.php): failed to open stream: No such file
 or directory in PEAR\Downloader.php on line 1217
PHP Warning:  require_once(Structures/Graph.php): failed to open stream: No such
 file or directory in E:\Program Files\php5_3\pear\pear\PEAR\Downloader.php on l
ine 1217
 新手没办法,网上找解决。折腾了老半天,还是报这错误.原因很清楚就是少了Structures_Graph这个PEAR应用,相直接通用pear命令:
pear install Structures_Graph-1.1.1
在线安装这个应用,但让人痛心的是竟然也报同样的错误,我丢。。

不跟它玩了直接到PEAR官网下载Structures_Graph-1.1.0.tgz包。解压看看里面的结构;发现里面正好有一个Structures/Graph.php;于是解压并把压缩包里的Structures文件夹放到pear根目下面。接着再运行Structures_Graph的安装命令,惊喜!!成功了。

接着再安装email,不出意外也成功。到此这个纠结了我半天的问题终于解决了。

谢谢大家的阅读哦!

您可能感兴趣的文章:

  • PHP Pear 安装及使用
  • windows下安装pear及phpunit(注意配置好php命令行环境)
  • PHP 5.0 Pear安装方法
  • pear包安装phpunit的方法
  • windows下安装PEAR php5.3.1下解决出错的方法
  • Windows下的PHP安装pear教程
  • php安装xdebug/php安装pear/phpunit详解步骤(图)
  • PHP性能优化准备篇图解PEAR安装
  • Windows 下的 PHP-PEAR 安装方法
  • Windows环境下安装PHP Pear的方法图文教程
  • PHP使用 Pear 进行安装和卸载包的方法详解


  • 上一条:
    PHP单例模式是什么 php实现单例模式的方法
    下一条:
    php+html5+ajax实现上传图片的方法
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 在windows10中升级go版本至1.24后LiteIDE的Ctrl+左击无法跳转问题解决方案(0个评论)
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(95个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客