2012-11-29 8 views
7

Facebook opublikował dzisiaj duże ogłoszenie - HHVM is replacing the original hiphop compiler.Czy HHVM (HipHop) obsługuje Postgresql/arbitrary rozszerzenia pecl?

Stary HipHop miał ograniczone wsparcie dla rozszerzeń - w tym, IIRC, bez wsparcia postgre.

Czy HHVM obsługuje wszystkie rozszerzenia pecl? Ile obsługuje standardowa biblioteka PHP?

Co to jest ? Czy wsparcie dla HHVM jest?

+1

Znalazłem to: wsparcie https://github.com/facebook/hiphop-php/wiki/Extensions-and-modules-roadmap ... –

Odpowiedz

13

W roku odkąd pierwotnie odpowiedział na to pytanie, rzeczy zmieniły się radykalnie. HHVM now publishes an extension list. Chociaż nie mają jeszcze wbudowanej obsługi ext/pgsql, wskazują one na this third party extension, który implementuje ext/pgsql i zapewnia obsługę Postgres dla PDO. Teraz publikują także documentation on writing your own extensions.

Moja oryginalna odpowiedź znajduje się poniżej. Należy pamiętać, że HHVM całkowicie zastąpił HipHop i że poniższe linki i informacje są nieaktualne.


Does HHVM wsparcie wszystkie rozszerzenia PECL?

Wszystkie obecne rozszerzenia PHP są nieodwracalnie związane z obecną bazą kodu PHP, API Zend i istniejącą maszyną wirtualną PHP.

HipHop i HHVM to osobne implementacje języka PHP, wykorzystujące różne metody wykonywania kodu PHP. Nie używają istniejącej bazy kodu PHP, Zend ZPI ani PHP VM. Żadne istniejące rozszerzenia PHP, takie jak te hostowane na PECL, nie mogą być bezpośrednio przeniesione do HipHop/HHVM.

W rzeczywistości nie chodzi o "przeniesienie" rozszerzenia, które musiałoby się zdarzyć tak bardzo, jak z pełną reimplementacją do podstawienia. Dobrą nowiną, jeśli jest taka, jest to, że wiele rozszerzeń PHP to po prostu cienkie forniry w stosunku do surowego API poziomu C, naświetlonego przez dowolną bibliotekę, która jest zamieniana na rozszerzenie. W zależności od celu port może być bardzo łatwy. Z drugiej strony, nie wszystkie rozszerzenia są owijkami wokół bibliotek stron trzecich, więc YMMV.

Ile standardowej biblioteki PHP obsługuje?

Wygląda na to, że listę obsługiwanych rozszerzeń można znaleźć w katalogu runtime/ext.

https://github.com/facebook/hiphop-php/tree/master/src/runtime/ext

Wygląda dość wszechstronne, mają nawet PDO. Żadne znaki Postgres nie obsługują jednak.

+0

__Postgres JEST AVAILABLE__ od koniec 2013, pls znajduję moją odpowiedź poniżej. – Philzen

1

Po pewnym wywiercenie, znalazłem this facebook post co sugeruje, że większość libs są nadal nieobsługiwane

HHVM extension status

3

rok później - jeszcze nie strzelisty jak MySQL, ale nie wydaje się być sposobem według tego official HHVM blog comment reply (od 19 grudnia 2013)

Jeremy Wilson mówi: Chciałbym zobaczyć Redis i PostgreSQL wsparcie.

(Odpowiedz) Simon mówi: Obsługa Redis jest już dostępna i można użyć rozszerzenia PostgreSQL.

... odnosząc się do https://github.com/pocketRent/hhvm-pgsql

+0

Co ze sterownikiem Postgres PDO? –

+0

@FractalizeR, połączone rozszerzenie zapewnia obsługę zarówno "ext/pgsql', jak i PDO. – Charles

+0

@Charles Tak. Ale pamiętam pewne problemy ze stabilnością w tym. Czy teraz działa dobrze? –