当前位置: 代码迷 >> 综合 >> PHP扩展 -- pecl, pear, composer
  详细解决方案

PHP扩展 -- pecl, pear, composer

热度:51   发布时间:2023-12-09 11:10:38.0

一、首先需要区分 pecl,pear,composer

pear:(PHP Extension and Application Repository)是PHP的扩展代码包,是一种包管理工具,目前它的功能已被composer取代,所有的扩展均以PHP代码的形式出现,功能强大,安装简单,甚至可以改改就用。使用的时候,要在代码中进行Include才能够使用。
官网地址:pear.php.net

pecl:(PHP Extension Community Library)是PHP的标准扩展,可以补充实际开发中所需的功能,所有的扩展都需要安装,在Windows下面以Dll的形式出现,在linux下面,需要单独进行编译,它的表现形式为根据PHP官方的标准用C语言写成,尽管源码开放但是一般人无法随意更改源码。pecl是pear的一部分。
官网地址:pecl.php.net

composer:是php的包管理工具,优点在于仅需要提供一个composer.json文件,申明需要用到的三方库,一个简单的命令就能将其依赖全部装好。也方便项目的部署和发布,因为只需要提供一个composer.json就行了,还提供了自动加载的支持。这就涉及到php-fig组织的PSR-0规范了。

目前,我们使用 composer 来管理PHP代码包,使用 pecl 来管理c扩展。

二、安装pecl
上面说了,pecl 是 pear 的一部分,所以,安装 pear 后就安装了 pecl 工具。

1、php版本 > 7
cd /data/www
wget http://pear.php.net/go-pear.phar
php go-pear.phar
在这里插入图片描述
可以看到对应的安装路径,直接回车即可。
输入 pecl 或 pear 命令,返回的结果一样,但是目前来看,pear是去 pear.php.net 网站下载应用包,而此功能已被composer代替;pecl 是去 pecl.php.net 网站下载c扩展,所以我们只能 pecl 命令即可。

pecl install swoole // 正常下载安装

pear install swoole // 找不到package,会提示你用 pecl 命令

2、php版本 < 7
yum install php-pear

方法2:

cd /data/wwwcurl -o go-pear.php http://pear.php.net/go-pear
// 如果你的php版本高于php5.3, 执行这条
// curl -o go-pear.php http://pear.php.net/go-pear.phar php go-pear.php 
回车, 会提示选择安装的东西, 直接回车, 安装全部, 若后面有要选择y/n的, 输入y回车

要注意的是:pecl.php.net 并没有收录全部的PHP扩展,如果没有的话尝试使用 yum 安装,还没有的话只能下载源码编译安装。比如 posix 扩展就不在 pecl 里面,而是使用 yum 安装。