# Yii2 — Fast Secure Professional PHP Framework > Yii2 is a high-performance component-based PHP framework for developing modern web applications with built-in security, caching, and RESTful API support. ## Install Save in your project root: # Yii2 — Fast Secure Professional PHP Framework ## Quick Use ```bash composer create-project --prefer-dist yiisoft/yii2-app-basic myapp cd myapp php yii serve ``` ## Introduction Yii2 is a full-stack PHP framework optimized for performance through lazy loading and code generation. It provides a structured MVC architecture with strong conventions while remaining flexible enough for any web project. ## What Yii2 Does - Provides a full MVC architecture with code generation via Gii - Includes built-in ActiveRecord ORM for database access - Offers robust authentication, authorization, and RBAC - Supports RESTful API development with serialization and rate limiting - Includes asset management, caching, and i18n out of the box ## Architecture Overview Yii2 uses a component-based architecture where the application object orchestrates requests through a pipeline of modules, controllers, and actions. It implements lazy loading extensively, only instantiating components when first accessed. The framework uses a service locator pattern and supports dependency injection through its DI container. ## Self-Hosting & Configuration - Install via Composer with basic or advanced project templates - Configure database connections in `config/db.php` - Run migrations with `php yii migrate` - Use Gii code generator at `/gii` during development - Deploy behind Nginx or Apache with standard PHP-FPM ## Key Features - Gii code generator for models, controllers, and CRUD scaffolding - Two-tier caching with dependency invalidation support - Built-in RBAC with database or file-based storage - Debug toolbar and profiler for development - Extensible widget system for reusable UI components ## Comparison with Similar Tools - **Laravel** — more opinionated with Eloquent ORM; Yii2 offers comparable features with different conventions - **Symfony** — component-focused; Yii2 provides a more integrated full-stack experience - **CakePHP** — convention-over-configuration; Yii2 emphasizes code generation and performance - **CodeIgniter** — lighter weight; Yii2 includes more built-in features like RBAC and asset pipeline - **Laminas (Zend)** — enterprise-oriented; Yii2 balances enterprise features with developer productivity ## FAQ **Q: Is Yii2 still actively maintained?** A: Yes. Yii2 receives security patches and bug fixes. Yii3 is also in development as the next major version. **Q: How does Yii2 handle database migrations?** A: Yii2 includes a migration tool accessed via `php yii migrate` that supports versioned schema changes. **Q: Can Yii2 build APIs?** A: Yes. Yii2 has dedicated REST controller classes with built-in serialization, pagination, rate limiting, and content negotiation. **Q: What PHP version does Yii2 require?** A: Yii2 requires PHP 7.3 or higher, with PHP 8.x fully supported. ## Sources - https://github.com/yiisoft/yii2 - https://www.yiiframework.com/doc/guide/2.0/en --- Source: https://tokrepo.com/en/workflows/asset-afc8b58c Author: AI Open Source