Is It Fast? Is It Secure? Is it can write code rapidly? Yii Yes It Is!
Very hot topic among PHP Developers. I think I have not enough knowledge to decide which php framework is the best. I just want to share my experience in Yii2. I am using Yii2 framework since last 6-8 months and I found it most exiting. Followings are the main features i found in yii2.
First we discuss some history about Yii. Yii 1.0 was formally released on December 3, 2008 and Yii 2.0.0 was released on October 2014. Yii2 MVC based framework in simple, fast, extensive, secure and adopting modern technologies. Yii is released under the New BSD License (3-clause license).
Yii2 encourages rapid application development using gii tool. You can generate cruds, controllers, models, modules and extensions code using gii. This reduces development time a lot. In the era of modern technology we need rapid foundation of basic code structure like project configurations, db architecture, models, controllers, views and cruds of all db tables. In my point of view Yii2 is the best php framework which can done all these necessary stuff within few minutes.
Application UI Development (Widgets)
In Yii2 Widgets are actually your UI components. You can manage your frontend components like grids, detail views, date pickers, menus in a well-organized object oriented way are called widgets. Actually widgets are self-contained redistributable classes. What you do is just drop widget in a view and use it. GridView, DetailView, DatePicker etc. are the examples of widget. You can create your own widgets as well.
Database handling is very essential part of any php framework. You can access relational databases like MySQL, MS SQL, MariaDB, SQLite, PostgreSQL, and Oracle via well-mannered Object Oriented API called DAO (Database Access Objects). You can also write SQL queries in a programmatic way using Query Builder which is built on the top of DAO. You can also use NoSQL databases with Yii2 application like MongoDB atc.
User Input Data Handling
Yii2 also provide support in User input data using forms.
Yii also provide API's Support like modern php Frameworks
Yii provide its own Role Based Access Control to manage roles in your application. You can configure RBAC by two methods PhpManager and DbManager. DbManager is bit more complex. Using Yii RBAC you can create roles, permissions, assignments of permissions to the roles, assignment of roles to the users. Different extension for Yii2 RBAC also exists.
Yii2 Console Application
Yii2 can built your own console app and CRON Jobs in yii2
Security is also a very important subject when we are developing web application. Yii2 also provide such tools by which we can secure our web applications.
"A code that cannot be tested is a flawed". Yii2 also provide different techniques to test your code.