Yii is a free, open-source Web application development framework written in PHP5 that promotes clean, DRY (Don’t repeat yourself) design and encourages rapid development. It works to streamline your application development and helps to ensure an extremely efficient, extensible, and maintainable end product.
Being extremely performance optimized, Yii is a perfect choice for any sized project. However, it has been built with sophisticated, enterprise applications in mind. You have full control over the configuration from head-to-toe (presentation-to-persistence) to conform to your enterprise development guidelines. It comes packaged with tools to help test and debug your application, and has clear and comprehensive documentation.
Following some of the features that clearly distinguishes Yii from other development frameworks:
Avoids starting from scratch
As with most of the web application development frameworks, Yii allows you to focus on the unique business needs of the application instead of writing your own code to handle all aspects of authentication, form validation, SQL injection attack, prevention etc. Yii offers much more than other frameworks by providing utilities and extensions for generic functionality and UI controls. This really helps in Rapid Application Development as the available extensions are easily customizable for any business needs.
Integrated with jQuery, Yii comes with a set of AJAX-enabled widgets, such as auto-complete input field, tree view, data grid, which enables writing highly efficient and versatile user interface extremely simple.
No PHP4 baggage
Yii is completely based on PHP5. It is a 100% OOP framework. Although there are other PHP frameworks which have upgraded to PHP 5, they still carry the baggage of backward compatibility on PHP4. Yii doesn’t have that baggage as it was conceived and developed on PHP5, completely.
Yii is a high performance PHP framework. Yii is so much faster because it is using the lazy loading technique extensively. For example, it does not include a class file until the class is used for the first time; and it does not create an object until the object is accessed for the first time. Other frameworks suffer from the performance hit because they would enable a functionality (e.g. DB connection, user session) no matter it is used or not during a request The performance of Yii can further be increased by using APC (Alternative PHP Cache)
Database Programming with ORM
Yii provides powerful support for database programming.
Built on top of the PHP Data Objects (PDO) extension, Yii Data Access Objects (DAO) enables accessing to different database management systems (DBMS) in a single uniform interface. Applications developed using Yii DAO can be easily switched to use a different DBMS without the need to modify the data accessing code.
Yii Query Builder offers an object-oriented method for building SQL queries, which helps reduce risk of SQL injection attacks.
And Yii Active Record (AR), implemented as a widely adopted Object-Relational Mapping (ORM) approach, further simplifies database programming. Representing a table in terms of a class and a row an instance, Yii AR eliminates the repetitive task of writing those SQL statements that mainly deal with CRUD (create, read, update and delete) operations.
Although the included Yii database features can handle nearly all database-related tasks, you can still use your own database libraries in your Yii application. As a matter of fact, Yii framework is carefully designed to be used together with other third-party libraries.
Apart from the listed features, there are other interesting features like Security, Automatic generation of WSDL service specifications, Automatic code generation; Layered Caching Scheme etc. make Yii, a distinctive PHP Framework for web application development. #OptiSolaskourexperts