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:
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:
By following code you can assign allowed IPs as per your requirement in your Configuration file
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 development 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.