[PHP] Który framework?

0

Projektując serwis, który będzie napisany w PHP, zastanawiam się nad wykorzystaniem jakiegoś frameworka, który wspomógłby jego budowę. Nie mam specjalnych wymagań, poza tym, że chciałbym aby współpracował on z PHP 5.

Ktoś polecił mi CodeIgniter'a, ale przeglądając stronę domową, znalazłem ten oto cytat:

CodeIgniter will run on PHP 5. It simply does not take advantage of any native features that are only available in that version.

Co trochę mnie zniechęciło. Czy ktoś z was ma jakieś doświadczenie z tym frameworkiem i mógłby się obiektywnie wypowiedzieć?

Szukając innych rozwiązań, na stronie wikiModel-view-controller znalazłem listę kilkunastu pozycji!

  • Agavi an open-source, LGPL licensed MVC framework for creating applications written using PHP5.
    • Akelos PHP Framework a Ruby on Rails port to PHP4/5.
    • BareBonesMVC A one-file, no-configuration, MVC framework for PHP5.
    • CakePHP webapplication framework modeled after the concepts of Ruby on Rails.
    • CodeIgniter A PHP MVC framework.
    • DragonPHP MVC2 Framework for PHP 5.
    • Fusebox Fusebox is the most popular framework for building ColdFusion and PHP web applications.
    • FUSE A powerful but easy-to-use PHP 5 Framework for MVC development
    • Odin Assemble Small footprint PHP based MVC Framework.
    • phpXCore A MVC design pattern based PHP content management framework compatible with PHP4 and PHP5.
    • PRADO A PHP 5 MVC framework.
    • SilverStripe contains a fully fledged PHP 5.2 ORM/MVC Framework focused on building websites.
    • Solar PHP 5 framework Solar is a PHP 5 framework for rapid application development. It is fully name-spaced and uses enterprise application design patterns, with built-in support for localization and configuration at all levels.
    • Switch board with Routing PHP 5 MVC Framework with Routing.
    • Symfony Framework PHP 5 MVC Framework.
    • TinyMVC Framework Simple and lightweight PHP5 MVC (Model-View-Controller) framework.
    • TYPO3 extension library lib/div PHP 4/5 MVC framework for TYPO3 extension development
    • Zend Framework A PHP 5-based MVC framework.
    • ZNF PHP5 MVC framework for enterprise web applications
    • Zoop Framework A Mature PHP 4/5 MVC framework.

Który z nich wybrać?

0

Osobiście trochę pisałem w CI. Całkiem miło się pisze, aczkolwiek muszę zaznaczyć, że o ile w CI pisałem, to nie mam porównania z innymi frameworkami MVC.

P.S. Sam CI nie korzysta z PHP5, co wcale nie przeszkadza korzystać z jego udogodnień w pisanych kontrolerach/modelach/widokach/rozszerzeniach (aczkolwiek ja osobiście w miejsce widoków "podczepiam" Smarty).

0

A słyszałeś coś o Zend Framework? Porównując listę możliwości z CI wygląda zadowalająco.

0

jeśli planujesz robić jakiś większy projekt ( nie ksiege gosci itp ) oraz nauczyc sie czegos konkretnego to polecam: Zend Framework (+ Smarty jako warstwa widoku jak bedzie ci sie zle pracowalo z Zend_View) albo Symfony :) ( jak na moje Symfony jest troche bardziej rozbudowane - ale ma do tego bardzo dobra dokumentacje )

0

Słyszeć słyszałem. Tyle tylko, że tak jak wyżej napisałem, żadnego poza CI nie używałem w praktyce.

P.S. Pytanie, czy wymaganie możliwości PHP5 jest w dzisiejszych czasach dobrym rozwiązaniem - wydaje mi się, że wsteczna kompatybilność w przypadku uniwersalnych stron jest bardzo pożądana jeszcze (wszak dość spory odsetek firm hostingowych nie oferuje jeszcze PHP5, szczególnie jeśli mówić o tańszych/darmowych możliwościach).

0

Na początek projekt będzie działał na domowym serwerze więc problem z hostingiem nie jest na razie przeszkodą.

Dzięki za pomoc.

0

Kompatybilność wsteczna to jednocześnie wielka wada i zaleta CodeIgnitera. Ja, tworząc własne aplikacje o niego oparte, korzystam z możliwości jakie daje PHP5 (dokładnie interfejsy, klasy wirtualne i tak dalej - bo sam podział na metody prywatne/publiczne może być nieco zachwiany przez wymagania niektórych klas wbudowanych). I naprawdę to jest bardzo fajny framework i szybko się pisze.

W poszukiwaniu czysto PHP5 rozwiązania naprawdę spojrzyj na Zenda, Symfony z tego co pamiętam jest bardzo przyjemny, ale najciekawszym - moim zdaniem - jest PRADO. Jeżeli kiedyś widziałeś ASP.NET w akcji, to to jest bardzo podobne - jest zestaw gotowych kontrolek, które się na stronie osadza (niestety nie ma takiego fajnego IDE).
Od jakiegoś czasu powtarzam sobie, żeby spojrzeć na to głębiej, ale ciągle mi się jakoś nie chce.

0

Dopiero zaczynam z PHP więc może moje pytanie zabrzmi dziwnie (chociaż myślę, że tak sie nie da) ale dla pewności:

Czy można łączyć frameworki w jednym projekcie?

0

Z technicznego punktu widzenia - możesz. De facto możesz wszystko. Jednak nie widzę za bardzo idei takiego rozwiązania, a ponadto może być to dość niewygodne (frameworki mają różne architektury). Nie wiem, czy nie prościej znaleźć framework najbliższy swoim oczekiwaniom, a następnie ewentualnie rozszerzyć go o brakujące możliwości, niż łączyć ze sobą kilka różnych.

1 użytkowników online, w tym zalogowanych: 0, gości: 1