Yii is among most popular PHP framework used widely for enterprise software & complex web applications development. To extent the name, “Yii” stands for “Yes it is” it means nothing is impossible and also represents adaptable, simple and easy to understand programming paradigm. Yii is a high-performance PHP framework used for developing rapid-performance web applications which are fast, scalable & secure. It is an open source web application framework, which helps empowers programmers to create large scale web applications with advanced caching solutions.

Yii framework is acquiring more significance and massive popularity among the developers because of its dynamic approach and extreme open source technology. With easy data migration utility, you can efficiently upgrade application form on various installations. Yii comes with tools and extension, which help developers to perform testing and debugging of the applications. It comes with comprehensive documentation and automates repetitive task thereby increasing your programming efficiency.  An example of such popular extension is “Gii”.

Gii is a web-based code-generator extension provided by Yii framework. You can create and generate fully customized forms, models, CRUD for database and more with it. It allows quick code template creation using code scaffolding tool. It also allows you to create as well as customize different types of code generators. Gii provides Web-based interface for you to interactively generate the code you want. It also provides a command line interface for developer who prefers to work with their console windows most of the time.

Gii comes with some default code generators. Every code generator is generating a specific type of code.

Model Generator – It generates an ActiveRecord class for the specified database table.

CRUD Generator – It generates a controller and views that implement CRUD (Create, Read, Update, Delete) operations for the specified model.

Controller Generator – It helps to generate a new controller class with one or several controller actions and their corresponding views.

Form Generator – By using this generator you can create a view script file that displays a form to collect input for the specified model class.

Module Generator – It helps to generate the skeleton code required by a Yii module.

Extension Generator – It generate the files needed by a Yii extension.

Steps to install Gii extension in your Web application

The preferred way to install Gii Extension is by following command through composer.

 – php composer.phar require –dev –prefer-dist yiisoft/yii2-gii

Or you can add this code to the require section of your composer.json file and then you will find a folder named yii2-gii at /path/to/project/vendor/yiisoft/yii2-gii:

“yiisoft/yii2-gii”: “~2.0.0”

Once the Gii extension has been installed, enable it by adding following lines to application configuration file which located at config/main-local.php:

Gii Extension step-2

 You can then access Gii through the following URL:

http://localhost/path/to/project/index.php?r=gii

If you have enabled pretty URLs, you may use the below URL:

http://localhost/path/to/project/index.php/gii

If you are accessing Gii from a machine other than localhost, the access will be denied by default for security purpose. You can whitelist IP address in order to access it via remote IP. You can configure Gii to add the allowed IP addresses as follows:

step4

By following code you can assign allowed IPs as per your requirement in your Configuration file

Gii Extension step-5

The code generated by Gii extension of Yii framework is a template that can further be customized according to your requirements. Yii is a very reliable and unique MVC framework which enables to create exceptionally scalable, secure, and efficient web applications that facilitates business. Yii helps you to get web applications up and running in no time by generating all the essential CRUDS operations. Using the Yii PHP framework can be a source of a strong competitive advantage as it is easy to configure and an advanced caching system, which helps to create highly functional websites that are engaging, effective and offer the perfect ROI.