2017-03-09 44 views
0

不知道该怎么办... PHP在5.6上,但PEAR说PHP版本是5.5,所以当我安装一个PEAR包时,它会到一个错误包含路径的位置(一个包含5.5梨的路径),所以当我包含东西时,我的代码无法找到它,因为它正在查看5.6梨包含路径。PHP版本如果5.6但PEAR说它是5.5。 5.6如何获得PEAR?

我认为解决办法是让梨使用PHP版本5.6或降级我的PHP版本到5.5,但我想知道是否有方法告诉梨容易使用5.6?

[[email protected] html]$ pear version 
PEAR Version: 1.10.1 
PHP Version: 5.5.38 
Zend Engine Version: 2.5.0 
Running on: Linux classified 2.6.32-642.15.1.el6.x86_64 #1 SMP Fri Feb 24 14:31:22 UTC 2017 x86_64 

$ php --version 
PHP 5.6.30 (cli) (built: Feb 22 2017 20:51:09) 
Copyright (c) 1997-2016 The PHP Group 
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies 
    with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v5.1.1, Copyright (c) 2002-2016, by ionCube Ltd. 
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies 
+0

发生这种情况的原因很多。我建议使用[Composer](https://getcomposer.org)而不是Pear。 – Kyoya

+0

有哪些常见原因? –

回答

0

您需要更改pear正在使用的php版本。

$ pear config-get php_bin 
/usr/bin/php 

$ pear config-set php_bin /path/to/php 

不幸的是,PEAR仍然使用老版本,因为它是硬编码在pear shell脚本。打开它并编辑路径。

$ emacs `which pear` 
... 
PHP="/usr/bin/php" 

更改该行。

PEAR安装程序现在已经拿起了新的PHP版本,并可能是一个不同的安装目录的PHP文件:

$ pear config-show 
... 
php_dir /path/to/dir 

你可能需要重新安装包将其移动到新的目录。