Jakie są różnice między PECL a PEAR?

138

Widzę, że biblioteka GD jest przeznaczona dla obrazów. Ale nie widzę różnic między PECL i PEAR. Oba mają uwierzytelnianie. Jakie są główne różnice między dwoma? Dlaczego ich nie łączą?

piszczel
źródło

Odpowiedzi:

254

PECL to skrót od PHP Extension Community Library , zawiera rozszerzenia napisane w C, które można załadować do PHP w celu zapewnienia dodatkowej funkcjonalności. Aby zainstalować te rozszerzenia, musisz mieć uprawnienia administratora, kompilator C i powiązany łańcuch narzędzi.

PEAR to rozszerzenie PHP i repozytorium aplikacji , posiada biblioteki i kod napisany w języku php. Te, które możesz po prostu pobrać, zainstalować i dołączyć do kodu.

Więc tak, są podobne, ale tak różne :)

Anti Veeranna
źródło
23
Bardzo jasna odpowiedź. Dodam, że PEAR to tak naprawdę dwie rzeczy: to repozytorium bibliotek, ale to także kanał dystrybucji / system pakowania. Pierwotnie system pakowania rozprowadzał tylko pojedyncze repozytorium PEAR, ale obecnie kanał dystrybucji może być używany przez dowolną bibliotekę strony trzeciej.
troelskn
@troelskn, Nazywasz to „kanałem dystrybucji”? Czym różni się od zwykłej biblioteki PHP tomdickharry? Czy zamierzasz również nazywać jQuery „kanałem dystrybucji”?
Pacerier,
@troelskn, właściwie jQuery oraz tom i harry również mają jasno zdefiniowane protokoły. Co sprawia, że ​​PEAR różni się od nich?
Pacerier
7
@Pacerier Ostatni raz, gdy patrzyłem, jQuery nie miał menedżera pakietów. W społeczności js, npm wydaje się obecnie wypełniać tę pustkę (chociaż przez lata byli inni zawodnicy).
troelskn
8

PECL to repozytorium rozszerzeń języka C dla PHP. Te rozszerzenia są zwykle instalowane za pomocą peclpolecenia, które jest aliasem dla pear, z domyślnym kanałem / repozytorium ustawionym na pecl.php.net.

PEAR to wiele rzeczy:

  1. Instalator pakietów ( pearpolecenie), który jest w stanie zainstalować pakiety z różnych kanałów (repozytoriów), w tym pecl.php.net. Wielu uważa kompozytora za następcę instalatora gruszki.
  2. Repozytorium pakietów http://pear.php.net/packages.php z ~ 600 bibliotekami. Wiele z nich można zainstalować przez kompozytora.
  3. Standard kodowania PHP dostępny z PHP_CodeSniffer.
cweiske
źródło
Czy wydaje Ci się, że bardziej dokładne / jasne jest stwierdzenie, że ekosystem PEAR zawiera standard kodowania?
Zv_oDD
5

pear to klasy php napisane w php, podczas gdy pecl to rozszerzenia, które nie są napisane w php i wymagają kompilacji.

Hos Mercury
źródło
2

PEAR jako taki nie jest standardem kodowania. Zamiast tego PEAR „podąża” za ustalonym standardem kodowania zalecanym przez społeczność PHP. Nie jest to jednak jedyny standard kodowania, za którym mogą podążać użytkownicy PHP, ZF, np. zaleca nieco inny standard.

Po prostu inny facet
źródło
1

PEAR jest również standardem kodowania ;-) php_codesniffer (zainstaluj przez $ pear install php_codesniffer) to narzędzie, które skanuje twój kod i hilight tam, gdzie odbiega od tego lub innego obsługiwanego standardu kodowania.

kguest
źródło