Yii is an open source object-oriented, component-based MVC web application framework written in PHP.
I prefer Yii because
- Model-View-Controller (MVC) design pattern.
- Complete management of Web service request handling.
- It supports message translation, date and time formatting, number formatting, and interface localization.
- Excellent caching scheme. It supports almost every kind of caching services as data caching, page caching, and fragment caching and dynamic content. It is explicitly designed to work efficiently with AJAX. Yii only loads the features that you need. So it is exclusively fast to work with.
- Errors are handled and presented more nicely, and log messages can be categorized, filtered and routed to different destinations.
- Security parameters include cross-site scripting (XSS) prevention, cross-site request forgery (CSRF) prevention, cookie tampering prevention, etc.
- Automatic code generation for the skeleton application, CRUD applications, etc.
- Code generated by Yii components and command line tools complies with the XHTML standard.
- Carefully designed to work well with third-party code. For example, it's possible to use code from PEAR or Zend Framework in a Yii application.
The Yii project has an extension repository consisting of user-contributed components.
There was also an official extension library, zii, which was then merged with the core framework. It also includes additional behaviors and widgets, such as grids and jQquery UI.
Yii comes with a collection of official documentation, guide that gives the description of every feature and a class reference which gives every detail about properties on methods and events.
There's also a user-contributed documentation, most of which is available within the wiki on the official website.
These are the reasons why I want Yii to be the framework for my development project. In a nutshell, Yii, with all its versatile and development-friendly features became a key-resource for me and like-minded professionals.