PHP pehelysúlyú keretrendszerek – körkép

Tegnap utánanéztem annak, hogy milyen pehelysúlyú PHP keretrendszerek vannak és ezek mennyire használhatóak.

Mikor beírtam a keresőbe, hogy “micro php framework”, nagyon sokfélét találtam, de később kiderült, hogy korai volt ez az öröm.

Először az alábbi keretrendszereket teszteltem:

limondade.php

microMVC

Slim

GluePHP

Phraw

…és ezek közül egyik sem működött. 🙂 Komolyan nem…annyira nem, hogy vagy el sem indultak, vagy a hozzájuk mellékelt demók ciki hibaüzeneteket dobtak; vagy – és ez volt a legnagyobb sokk számomra: belenéztem a forráskódjaikba – ezt nem kellett volna… (nem mindegyikre érvényes ez a megállapítás, de néhányra igen) mellékesen pedig se használható dokumentációt, se értelmes leírást, se semmit nem találtam hozzájuk (mindegyikhez egy-két oldalas leírás volt, amiben azt ecsetelték mennyire jó, gyors és egyszerű az adott keretrendszer), de sajnos ez nem bizonyult igaznak.

A fentiek közül a limonade.php volt az egyetlen amelyik hajlandó volt elindulni, de bár ne tette volna…a mellékelt példaprogramok ugyanis hibákat dobáltak, különféle notice-k formájában, majd mikor ezeket javítottam, akkor ilyeneket:

 ( ! ) Parse error: syntax error, unexpected $end in C:\wamp\www\limonade\examples\example01\index.php on line 125  

a dokumentációkban szinte semmi.
Hozzáteszem, hogy ha egyenként 1-2 órát rájuk szánok biztosan kicsiszolhattam volna belőlük valami élet-félét, de pont olyan keretrendszert kerestem, amelyet ha bemásolok egy könyvtárba, megnézek 2-3 példaprogramot, akkor azután tudom használni – tehát igazi pehelysúlyút kerestem.

Nem tudom mi az oka ennek a sok hibának.

Talán a mennyiség egyre inkább a minőség rovására megy, azért még keresgélek és majd megírom ha találtam említésre méltó PHP Micro Frameworkot.

…délután folytattam a tesztelést/keresgélést és újabb keretrendszereket találtam. Az első amit megnéztem a tekuna. Az eredmény meglepetést okozott, ugyanis a tekuna működött! Sőt írok is róla kicsit.

Tekuna

Hivatalos oldal: http://code.google.com/p/tekuna/
Dokumentációs sajnos nincs hozzá, de egy könyvtárba bemásolva azonnal működött. Minimum 5.3-as PHP kell neki(nem tudom miért, mert névtereket nem láttam benne).
A Tekunában az tetszett leginkább, hogy a többnyelvűség a rendszer szerves részét képezi, a könyvtárstruktúrája átlátható, a fragments könyvtárban kaptak például helyet a nyelvesített sablonfájolok – egyetlen hibája, hogy szerintem már nem fejlesztik… De legalább működött :).

A következő keretrendszer amit ki szerettem volna próbálni a PHP Fat-Free Framework volt, de nem indult el, illetve “Error 101 (net::ERR_CONNECTION_RESET): The connection was reset.” hibát okozott… Szóval, a sorsa a törlés lett.

És itt abba is hagytam, bevallom, hogy elegem lett, őszintén szólva azt hittem, hogy ennél azért jobb a helyzet, tömören ennyi a véleményem, nem akarok belemenni mélyebben, legyen elegendő ennyi… Ha valaki tud valami jó, működő és kicsi keretrendszert, akkor írjon!

Helyreigazítás:

A Silex-et sikerült működésre bírnom, a gond az volt, hogy én a teljes forráskódját töltöttem le és nem a .phar-os változatot teszteltem, és azzal valóban gond nélkül működik és nem is akármilyen sebességet produkál…

Szicsunak egy képrenyőfotó:

És köszi, hogy szóltál!

This entry was posted in micro frameworks, php. Bookmark the permalink.

19 Responses to PHP pehelysúlyú keretrendszerek – körkép

  1. szicsu says:

    Szia xjan!Nagyon gyorsan feladtad a Silex-xel való próbálkozást, ill. nem olvastad el a doksit(http://silex-project.org/documentation).Nekem telepítéssel együtt kb. 10 perc alatt sikerült életre keltenem és egy hello-t kicsikarni belőle.Leírás: http://silex-project.org/doc/intro.htmlTeszt:$ curl -i http://silex.local/hello/xjanHTTP/1.0 200 OKDate: Mon, 08 Aug 2011 17:47:56 GMTServer: Apache/2.2.17 (Ubuntu)X-Powered-By: PHP/5.3.5-1ubuntu7.2cache-control: no-cacheContent-Length: 10Vary: Accept-EncodingConnection: closeContent-Type: text/html; charset=UTF-8Hello xjan

  2. xjan says:

    Persze, persze 🙂 Sehol egy Screenshot! 😉 Amúgy lehet, hogy én voltam türelmetlen, este újra kipróbálom és ha sikerül akkor javítom az írásban, de ha nem…akkor lehet, hogy nálam a gond, 5.3-as PHP, Apache 2 – nem tudom, ezekkel mennie kéne.

  3. xjan says:

    Silex működik, helyreigazítás megtörtént!

  4. szicsu says:

    Azért nem csatoltam screenshot mert azt feltételeztem, hogy egy curl kimenet fejlécekkel meggyőz, hisz olyan infókat is tartalmaz, amit egy kép nem 🙂

  5. xjan says:

    Mikor beírtam, hogy "screenshotot kérek", illetve amikor elküldtem, azután 120% biztos voltam benne, hogy erre ráfázok és belémkötsz 😀 És tessék 🙂

  6. Hi Xjan,I'm the maintainer of the Phraw micro framework.I developed it in order to solve special cases at my job and I released it hoping to help someone else.I don't speak Hungarian so I read your post through Google Translate, but unfortunately the final result is quite incomprensible.The feedback is very important but I don't understand what you have not found in the Phraw website or what the framework is lacking. Could you help me to understand better?

  7. I don't know if this help you, but I prepacked a functional web site with Phraw, ready to run.The link is: http://phraw.dav-muz.net/downloads/The installation is very simple (read INSTALLATION.txt in the package): copy the files and set the two directory permissions.

  8. xjan says:

    Hello Davide,thanks for the link, I am sorry I can only answer you now. I will see the link at the weekend and if i manage to install it, I will write a blog post about it.

  9. Thank you Xjan,your feedback will be precious. 🙂

  10. Janez says:

    Szia.Én is épp a micro keretrendszerek tájékán nézelődök.Fat-freevel kapcsolatba esetleg egy rövid vélemény? Ez is egész jónak tűnik.http://fatfree.sourceforge.net/

  11. xjan says:

    Szia, én próbálkoztam a FatFree-vel, de nem indult el… Nagyon sokáig reszelte a merevlemezt, majd egy ilyen hibával örvendeztetett meg:"Error 101 (net::ERR_CONNECTION_RESET): The connection was reset."De amúgy biztosan jó, csak én vagyok béna 🙂

  12. Janez says:

    Szia Xjan."Error 101 (net::ERR_CONNECTION_RESET): The connection was reset."Nálam egyből indult, és a fenn lévők többsége is.(linuxon)Most windowson WAMP-ot nyomtam be itt kapásból elhalt.Ahogy elnézem a gondja nálam az Apache ReWrite modul-t hiányolta.Bekapcsoltam neki, majd a .htaccess-ből lekommenteztem aRewriteBase / sor-t és ment rendesen.Nálam windows alatt a keretrendszerek többsége az apache konfig fájlnál a .htaccess-nél szálnak el. 500 feletti hibákat dobtak.(itt-ott akad azért php hiba is 🙂

  13. xjan says:

    Kipróbáltam 🙂 nálam továbbra is kinyiffan, ugyanúgy, érdekes amit írsz, mert én ezt még nem vettem eddig észre, sem a Symfony, sem a Yii, vagy a Phraw nem csinált ilyet, a többinél meg más hibák volt… Őszintén bevallom, hogy nincs türelmem keresgélni a hibákat egy keretrendszerben, ha 5-15 perc alatt nem bírom egy alap "Hello World!" szerű működésre bírni, akkor nem érdekel tovább 🙂 És a Linux/Windows különbségnek sem szabadna léteznie, ez egy PHP szerű nyelvnél egyértelműen a fejlesztő hibája. Szerintem legalábbis.

  14. Janez says:

    A nagy keretrendszereknél én se tapasztaltam.Yii nálam is megy elsőre(ezt használom aktívan). De mondjuk ott nincs is alapba .htaccess, utólagos konfigurálást igényel, de megy :)Nekem a nagyok közül régebben a CodeIgniternél jelentkezett probléma.Igen a web elviekbe platform független, de azért én nagyon érzem néha a külömbésgeket, mikor linuxról átküldök ezt-azt windowst használóknak.Valószinűleg nem a windowsba van a hiba, hanem a windowsra szállított server csomagok (WAMP,XAMPP) másként vannak alapba beállítva.Nálam, linuxon sokat használom a reWrite, cURL modult és fura volt hogy a WAMP-ba egyik sincs alapba engedélyezve.Lényeg, hogy egyik rendszerről a másikra rakva ritka az nálam ha egyből megy. Eddig talán a Yii-s oldalaim a kivétel. =)Én se keresgélem őket, csak ez egy olyan volt nálam, hogy 2 perc alatt tudtam orvosolni.

  15. xjan says:

    Igen, teljesen egyetértek veled 🙂 Még csak annyi, hogy néha úgy tűnik, hogy a Windowsos felhasználókra szándékosan nem gondolnak, én pont most vakarom a fejem emiatt. Nekem a Symfony-s projektek is szoktak működni, ilyen, mint amit a FatFree csinál szerintem ritka, majd hétvégén ha lesz időm lehet, hogy megpróbálom kideríteni mi volt a baja nálam, csak most kicsit elhavazódtam… 🙂

  16. Janez says:

    Symfony is tökéletesen megy.Amúgy nekem tetszenek az olyan megoldások mint ami a Yii-nél is van.Yii-nél a csomaggal jön egy 'requirements' könyvtár ami teszteli a szerver környezetet, hogy alkalmas-e a futtatásra. Ahogy elnézem ez teljes mértékbe független a keretrendszertől.(már dobált is néhány modult windowson amit hiányol)A fatFree-nél nem független a diagnosztika! Így el se lehet jutni odáig hogy mi lehet a gond, mert ha a keretrendszer lefullad, akkor nincs eredmény.A rendszer független diagnosztikai megoldásokat lehet szorgalmaznám.Röviden ennyit akartam. 🙂

  17. xjan says:

    Igen, a "requirements" nagyon jó, meg az egész kényelmes. Én most per pillanat úgy érzem, hogy visszatérek a Symfonyhoz 🙂 szerintem az új, kettes verzió jelenleg a legjobb választás 🙂 De ez csak szubjektív!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s