The definitive guide to Yii3
We release this guide under the Terms of Yii Documentation.
Introduction
Getting started
- What do you need to know?
- Creating a project
- Application Workflow
- Saying hello
- Working with forms
- Working with databases
- Generating code with Gii TODO
- Looking ahead
- Demo applications
Key concepts
Application structure
- Application structure overview
- Entry scripts
- Application
- Actions
- Middleware
- Domain
- Service components
- Packages
Handling requests
Security
- Security overview
- Authentication
- Authorization TODO: verify and complete!
- Working with passwords
- Cryptography
- Trusted request
- Best practices
Caching
Working with databases
- Yii DB
- Active Record
- Migrations TODO: verify/update!
Views
- View
- Assets TODO: verify!
- Scripts, styles and metatags TODO: verify!
- Template engines TODO: verify!
- View injections
- Widgets TODO: verify!
Getting data from users
Displaying data
- Data formatting TODO
- Pagination TODO
- Sorting TODO
- Data providers TODO
- Data widgets TODO
REST APIs
- Quick start TODO
- Resources TODO
- Controllers TODO
- Routing TODO
- Authentication TODO
- Rate limiting TODO
- Versioning TODO
- Error handling TODO
Development tools
- Debug toolbar and debugger
- Generating code using Gii
- Generating API documentation
Testing
- Testing overview
- Testing environment setup
- Unit tests
- Functional tests
- End-to-end tests
- Static analysis and mutation testing
Special topics
- Console applications
- Mailing
- Performance tuning
- Using Yii with event loop
- Using Yii with FrankenPHP
- Using Yii with RoadRunner
- Using Yii with Swoole
- Docker in application templates
- Internationalization