Actions

Choice of a PHP framework for LimeSurvey 2: Difference between revisions

From LimeSurvey Manual

No edit summary
No edit summary
 
(8 intermediate revisions by 3 users not shown)
Line 7: Line 7:
| '''Criteria '''|| '''Weight (1-5)'''||Symfony 2||Yii
| '''Criteria '''|| '''Weight (1-5)'''||Symfony 2||Yii
|-
|-
|Ease of use, low learning curve||5|| ||
|Ease of use, low learning curve||5|| ||X
|-
|-
|Native support of Postgres/mySQL/MSSQL database systems||5|| ||
|Native support of Postgres/mySQL/MSSQL database systems||5||X||X
|-
|-
|Requires at least PHP 5.1||5|| ||
|Handles some form of namespacing||5||X||X
|-
|-
|Handles some form of namespacing||5|| ||
|Supports creation of an application installer which handles DB setup properly without using commandline or weird workarounds||5||X||X
|-
|-
|Supports creation of an application installer which handles DB setup properly without using commandline or weird workarounds||5|| ||
|Pluggable authentication system||4||X||X
|-
|-
|Pluggable authentication system||4|| ||
|Activity and maturity||4||X||X
|-
|-
|Activity and maturity||4|| ||
|DB Active Records handling similar to CodeIgniter||3|| ||X
|-
|-
|DB Active Records handling similar to CodeIgniter||3|| ||
|Handles real 5.3 namespaces||2||X||X
|-
|-
|Handles real 5.3 namespaces||2|| ||
|XML-RPC server support or support for a similar RESTful API (not SOAP)||2||X||X
|-
|-
|XML-RPC server support or support for a similar RESTful API (not SOAP)||2|| ||
|Native PHP views||5||X||X
|-
|-
|Native PHP views||5|| ||
|Templating engine||4||X||X
|-
|-
|Templating engine||4|| ||
|Support for different template engines||2||X||X
|-
|-
|Support for different template engines||2|| ||
|CLI support||3||X||X
|-
|-
|CLI support||3|| ||
|ORM support||2||X||X
|-
|-
|ORM support||2|| ||
|Unit tests||X||X||X
|-
|-
|Unit tests||X|| ||
|Clean separation between Framework/Application Configuration and User Configuration (Administrative Configuration)||5||X||X
|-
|Clean separation between Framework Code and Application Code||5||X||X
|-
|Thoughtfull library folder layout for integration with LimesSurvey and 3rd Party Libraries (incl. Autoload)||4||X||X
|-
|-
|
|
Line 46: Line 50:
*Support of Postgres/mySQL/MSSQL database systems
*Support of Postgres/mySQL/MSSQL database systems
*MVC model
*MVC model
*Requires at least PHP 5.1


=Non-criteria=
=Non-criteria=
Line 51: Line 56:


=Other resources=
=Other resources=
 
#[http://en.wikipedia.org/wiki/Comparison_of_Web_application_frameworks#PHP_2 List & comparison of web frameworks]
[http://webification.com/best-lightweight-php-frameworks-2010 Best Lightweight PHP Frameworks of 2010]
#[http://webification.com/best-lightweight-php-frameworks-2010 Best Lightweight PHP Frameworks of 2010]
#[http://stackoverflow.com/questions/2578540/php-frameworks-codeigniter-yii-cakephp-vs-django/3027690#3027690 Short comparison Yii - CI]
#[http://stackoverflow.com/questions/7799012/yii-or-codeigniter-for-a-large-web-application/7799226#7799226 Short comparison Yii - CI #2]
#[http://firmy007.blogspot.com/2011/06/codeigniter-versus-yii-my-thoughts.html Blog article "Yii vs CodeIgniter]
#[http://codecult.wordpress.com/2011/03/02/kurze-zusammenfassung-bephpug-treffen-1-2-2011-php-frameworks/ Short summary of PHP frameworks (Germany, 02-2011)]
#[http://harrywolff.com/2011/09/my-experience-with-php-frameworks-yii-codeignitor-and-symfony/ Blog post "Yii vs CodeIgniter vs Simfony]

Latest revision as of 18:36, 11 November 2011

General

Criteria

Criteria Weight (1-5) Symfony 2 Yii
Ease of use, low learning curve 5 X
Native support of Postgres/mySQL/MSSQL database systems 5 X X
Handles some form of namespacing 5 X X
Supports creation of an application installer which handles DB setup properly without using commandline or weird workarounds 5 X X
Pluggable authentication system 4 X X
Activity and maturity 4 X X
DB Active Records handling similar to CodeIgniter 3 X
Handles real 5.3 namespaces 2 X X
XML-RPC server support or support for a similar RESTful API (not SOAP) 2 X X
Native PHP views 5 X X
Templating engine 4 X X
Support for different template engines 2 X X
CLI support 3 X X
ORM support 2 X X
Unit tests X X X
Clean separation between Framework/Application Configuration and User Configuration (Administrative Configuration) 5 X X
Clean separation between Framework Code and Application Code 5 X X
Thoughtfull library folder layout for integration with LimesSurvey and 3rd Party Libraries (incl. Autoload) 4 X X

Must-haves

  • GPL compatible license
  • Support of Postgres/mySQL/MSSQL database systems
  • MVC model
  • Requires at least PHP 5.1

Non-criteria

  • ACL (because LimeSurvey provides it's own CRUD ACL)

Other resources

  1. List & comparison of web frameworks
  2. Best Lightweight PHP Frameworks of 2010
  3. Short comparison Yii - CI
  4. Short comparison Yii - CI #2
  5. Blog article "Yii vs CodeIgniter
  6. Short summary of PHP frameworks (Germany, 02-2011)
  7. Blog post "Yii vs CodeIgniter vs Simfony