¿Cuáles son las diferencias entre PECL y PEAR?

138

Puedo ver que la biblioteca GD es para imágenes. Pero no puedo ver las diferencias entre PECL y PEAR. Ambos tienen autenticación. ¿Cuáles son las principales diferencias entre dos? ¿Por qué no los combinan?

espinilla
fuente

Respuestas:

254

PECL significa PHP Extension Community Library , tiene extensiones escritas en C, que se pueden cargar en PHP para proporcionar funcionalidad adicional. Debe tener derechos de administrador, un compilador de C y una cadena de herramientas asociada para instalar esas extensiones.

PEAR es PHP Extension and Application Repository , tiene bibliotecas y código escrito en php. Aquellos que simplemente puede descargar, instalar e incluir en su código.

Entonces, sí, son similares, pero muy diferentes :)

Anti Veeranna
fuente
23
Muy clara respuesta. Agregaría que PEAR es realmente dos cosas: es un repositorio de bibliotecas, pero también es un canal de distribución / sistema de empaque. Originalmente, el sistema de empaquetado solo distribuía el repositorio PEAR único, pero hoy, el canal de distribución puede ser utilizado por cualquier biblioteca de terceros.
troelskn
@troelskn, ¿lo llamas un "canal de distribución"? ¿En qué se diferencia de una biblioteca PHP tomdickharry normal? ¿Vas a llamar a jQuery un "canal de distribución" también?
Pacerier
@troelskn, en realidad, jQuery y tom y harry también tienen protocolos claramente definidos. ¿Qué hay de PEAR que lo hace diferente de ellos?
Pacerier
77
@Pacerier La última vez que miré, jQuery no tenía un administrador de paquetes. En la comunidad js, npm parece llenar este vacío en estos días (aunque ha habido otros concursantes a lo largo de los años).
troelskn
8

PECL es un repositorio de extensiones C para PHP. Esas extensiones generalmente se instalan a través del peclcomando, que es un alias para pear, con el canal / repositorio predeterminado establecido en pecl.php.net.

PERA es múltiples cosas:

  1. El instalador de paquetes ( pearcomando) que puede instalar paquetes de diferentes canales (repositorios), incluido pecl.php.net. Muchos consideran al compositor el sucesor del instalador de peras.
  2. El repositorio de paquetes http://pear.php.net/packages.php con ~ 600 bibliotecas. Muchos de ellos son instalables por el compositor.
  3. Un estándar de codificación PHP que está disponible con PHP_CodeSniffer.
Cweiske
fuente
¿Siente que es más preciso / claro decir que el ecosistema PEAR incluye un estándar de codificación?
Zv_oDD
5

pear es una clase de php escrita en php Mientras que pecl son extensiones que no están escritas en php y necesitan compilarse.

Hos Mercury
fuente
2

PEAR como tal no es un estándar de codificación. En cambio, PEAR "sigue" un estándar de codificación establecido que se fomenta en la comunidad PHP. Sin embargo, este no es el único estándar de codificación que los usuarios de PHP pueden seguir, por ejemplo, el ZF. recomienda un estándar ligeramente diferente.

Solo otro chico
fuente
1

PEAR también es un estándar de codificación ;-) php_codesniffer (instalar a través de $ pear install php_codesniffer) es una herramienta que escaneará su código y hará que crezca cuando se desvía de ese o cualquier otro estándar de codificación compatible.

kguest
fuente