blog image

Yii Framework

Yll is the electric framework, coded in PHP 5, the best pick for large-scale web 2.0 applications. It has specialties like MVC, DAO, caching. authentication and role-based access control, etc., and is appreciated for its security stratagems like cross-site request forgery prevention and cookie attack prevention.

Yii is an open source, object-oriented, component-based MVC PHP web application framework. Yii is pronounced as "Yee" or [ji:] and in Chinese it means "simple and evolutionary" and it can be an acronym for "Yes It Is!".

Yii started as an attempt to fix perceived drawbacks of the PRADO framework: Slow handling of complex pages, steep learning curve and difficulty to customize many controls. In October 2006, after ten months of development, the first alpha version of Yii was released, followed by the formal 1.00 release in December 2008.

Yii 1.1 was released in January 2010 adding a form builder, relational Active record queries, a unit testing framework and more. The Yii community continues to follow the 1.1 branch with PHP7 support and security fixes. The last release was version 1.1.21 in April 2019.

In May 2011 the developers decided to use new PHP versions and fix architectural shortcomings, resulting in version 2.0. In May 2013 the Yii 2.0 code went public, followed by the first stable release in October 2014. PHP7 is supported since version 2.0.9. The latest version 2.0.19 was released in May 2019.
Yii features include:
Model-View-Controller (MVC) design pattern.
Generation of complex WSDL service specifications and management of Web service request handling.
Internationalization and localization (I18N and L10N), comprising message translation, date and time formatting, number formatting, and interface localization.
Layered caching scheme, which supports data caching, page caching, fragment caching and dynamic content. The storage medium of caching can be changed.
Error handling and logging. Log messages can be categorized, filtered and routed to different destinations.
Security measures include prevention of cross-site scripting (XSS), cross-site request forgery (CSRF) and cookie tampering.
Unit and functionality testing based on PHPUnit and Selenium.
Automatic code generation for the skeleton application, CRUD applications, through the Gii tool.
Code generated by Yii components and command line tools complies to the XHTML standard.
Designed to work well with third-party code. For example, it's possible to include code from PEAR or the Zend Framework.