PECL和PEAR有什么区别?


138

我可以看到GD库用于图像。但是我看不到PECL和PEAR之间的区别。两者都有身份验证。两者之间的主要区别是什么?他们为什么不合并它们?

Answers:


254

PECL代表PHP Extension Community Library,它具有用C编写的扩展,可以将其加载到PHP中以提供其他功能。您需要具有管理员权限,C编译器和关联的工具链才能安装这些扩展。

PEARPHP扩展和应用程序存储库,它具有用php编写的库和代码。您只需下载,安装并包含在代码中即可。

所以,是的,它们是相似的,但又是如此不同:)


23
答案很明确。我要补充一点,PEAR实际上是两件事:它是一个库的存储库,但它也是一个分发渠道/打包系统。最初,打包系统只是分发单个PEAR存储库,但是今天,分发渠道可被任何第三方库使用。
troelskn

@troelskn,您称其为“发行渠道”吗?与普通的tomdickharry PHP库有何不同?您是否也将jQuery称为“分发渠道”?
Pacerier,2014年

@troelskn,实际上jQuery和tom and harry也明确定义了协议。PEAR的与众不同之处是什么?
Pacerier,2014年

7
@Pacerier上次查看时,jQuery没有软件包管理器。在js社区中,npm这些天似乎填补了这一空白(尽管这些年来还有其他参赛者)。
troelskn 2014年

8

PECL是PHP的C扩展的存储库。这些扩展程序通常是通过pecl命令安装的,该命令是的别名pear,默认通道/存储库设置为pecl.php.net

梨是多方面的东西:

  1. 软件包安装程序pear命令),能够从不同的渠道(存储库)(包括pecl.php.net)安装软件包。许多人认为作曲家是梨安装程序的后继者。
  2. 包含约600个库的软件包存储库 http://pear.php.net/packages.php。其中许多是可安装作曲家的。
  3. PHP_CodeSniffer提供的PHP 编码标准

感觉更准确/更清晰地说PEAR生态系统包含编码标准?
Zv_oDD

5

pear是用php编写的php类,而pecl是不是用php编写且需要编译的扩展。


2

这样的PEAR不是编码标准。取而代之的是,PEAR“遵循”了PHP社区内鼓励的一套编码标准。但是,这并不是PHP用户可以遵循的唯一编码标准,例如ZF。建议的标准略有不同。


1

PEAR也是一种编码标准;-) php_codesniffer(通过$ pear安装php_codesniffer进行安装)是一种工具,它将扫描您的代码并在与该标准或任何其他受支持的编码标准不符的地方进行提示。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.