Yii Framework (P1004)


Introduction

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!"

What you will learn

Students are expected to have strong PHP knowledge before joining this course.  This course will cover the following core topics:

  • Yii installation and development environment
  • Model View Controller (MVC) methodology
  • Template  layout design
  • Yii and Twitter Bootstrap integration
  • Widgets
  • Rela world sample application

Course Duration : 3 days

 

Module 1.0 : Introduction

1.1  About PHP 7 and Yii
1.2  Fundamental PHP
 

Module 2.0 : Getting Started

2.1  Installing Yii
2.2  Running Applications
2.3  Saying Hello
2.4  Working with Forms
2.5  Working with Databases
2.6  Generating Code with Gii
2.7  Looking Ahead
 

Module 3.0 : Application Structure

3.1    Overview
3.2    Entry Scripts
3.3    Applications
3.4    Application Components
3.5    Controllers
3.6    Models
3.7    Views
3.8    Modules
3.9    Filters
3.10  Widgets
3.11  Assets
3.12  Extensions
 

Module 4.0 : Handling Requests

4.1  Overview
4.2  Bootstrapping
4.3  Routing and URL Creation
4.4  Requests
4.5  Responses
4.6  Sessions and Cookies
4.7  Handling Errors
4.8  Logging
 

Module 5.0 : Key Concepts

5.1  Components
5.2  Properties
5.3  Events
5.4  Behaviors
5.5  Configurations
5.6  Aliases
5.7  Class Autoloading
5.8  Service Locator
5.9  Dependency Injection Container
 

Module 6.0 : Displaying Data

6.1  Data Formatting
6.2  Pagination
6.3  Sorting
6.4  Data Providers
6.5  Data Widgets
6.6  Working with Client Scripts
6.7  Theming
 

Module 7.0 : Security

7.1  Authentication
7.2  Authorization
7.3  Working with Passwords
7.4  Auth Clients
7.5  Best Practices
 

Module 8.0 : Caching

8.1  Overview
8.2  Data Caching
8.3  Fragment Caching
8.4  Page Caching
8.5  HTTP Caching
 

Module 9.0 : Working with Databases

9.1  Data Access Objects: Connecting to a database, basic queries, transactions, and schema manipulation
9.2  Query Builder: Querying the database using a simple abstraction layer
9.3  Active Record: The Active Record ORM, retrieving and manipulating records, and defining relations
9.4  Migrations: Apply version control to your databases in a team development environment
9.5  Sphinx
9.6  Redis
9.7  MongoDB
9.8  ElasticSearch
 

Module 10.0 Getting Data from Users

10.1 Creating Forms
10.2 Validating Input
10.3 Uploading Files
10.4 Collecting Tabular Input
10.5 Getting Data for Multiple Models

Module 11.0 : RESTful Web Services

11.1 Quick Start
11.2 Resources
11.3 Controllers
11.4 Routing
11.5 Response Formatting
11.6 Authentication
11.7  Rate Limiting
11.8 Versioning
11.9 Error Handling
 

Module 12.0 : Development Tools

12.1 Debug Toolbar and Debugger
12.2 Generating Code using Gii
12.3 TBD Generating API Documentation
 

Module 13.0 : Testing

13.1  Overview
13.2  Testing environment setup
13.3  Unit Tests
13.4  Functional Tests
13.5  Acceptance Tests
13.6  Fixtures
 

Module 14.0 : Special Topics

14.1  Advanced Project Template
14.2  Building Application from Scratch
14.3  Console Commands
14.4  Core Validators
14.5  Internationalization
14.6  Mailing
14.7  Performance Tuning
14.8  Shared Hosting Environment
14.9  Template Engines
14.10 Working with Third-Party Code