Changes
Recommended: " Chuanzhi Podcast Yii Development Large Mall Project Video Tutorial 》
Just like when the Yii2.0 era came, Yii1.0 will eventually be gloomy. The launch of Yii3.0 version is bound to set off waves in the Yii framework. So what is the difference between Yii3.0 and Yii2.0? What changes have been made?
Yii3.0 Framework Introduction
The Yii3.0 framework is a skeleton application best suited for quick project creation.
#The framework contains basic functionality including user login/logout and contact pages. It includes all common configurations, allowing you to focus on adding new features to your application.
Directory structure
config/ 包含應(yīng)用配置public/ 包含入口腳本,已發(fā)布的資源和其他公開可用的文件,例如favicon.ico和robots.txt runtime/ 包含運行時生成的文件 vendor/ 包含依賴的第三方包 .env .env.dist composer.json docker-compose.yml
Requirements
The web server supports PHP 7.1 which is the minimum requirement for the Yii3.0 framework .
Installation
If you don’t have Composer, you can install it by following the instructions on getcomposer.org.
You can then install this project template using the following command:
composer create-project --prefer-dist --stability = dev yiisoft / yii-project-template myappcd myapp
This gives you an empty project to which you can add the application template, see below on how to add these projects part.
Depending on your system, you may need to provide write permissions for ./runtime and ./public/assets
CLI application
If you want to install and run your own console The console application required for the command can be implemented by loading the yiisoft/yii-base-cli package.
composer require yiisoft/yii-base-cli
You can now run yii help to see the available commands.
API Application
If you want to create an API, you can load it by loading [yiisoft/yii-base-api](https://github.com/yiisoft/yii- base-api) package to implement
composer require yiisoft/yii-base-api vendor/bin/yii serve -p 8081
You can access the API through http://localhost:8081/.
Web Application
Since web applications use client-side resources (such as CSS and Javascript), the resource allocation system is first selected
Option a: Asset-packagist and composer-merge-plugin (requires PHP only)
composer require "wikimedia/composer-merge-plugin" composer config repositories.ap '{"type": "composer", "url": "https://asset-packagist.org"}' composer config extra.merge-plugin.include "vendor/*/*/composer.assets.json"
Option b: Foxy (requires npm or yarn)
composer require "foxy/foxy:^1.0.0"
Now you can install the web application library and its dependencies Item
composer require yiisoft/yii-base-web vendor/bin/yii serve
You should now be able to access the application at http://localhost:8080/.
You can find more available application libraries on GitHub.
Docker
Clone the repository and create an environment configuration file
cp .env.dist .env
To run the installation, create bash from the PHP image
docker-compose run --rm php bash
And run the composer command above.
Start the application stack
docker-compose up -d
Access via browser
http://docker.host:30080
Configuration
##Database
return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2basic', 'username' => 'root', 'password' => '1234', 'charset' => 'utf8', ];Tips: - Yii will not create it for you Database, this must be done manually before you can access it. - Inspect and edit other files in the config/ directory to customize the application as needed. - For information on basic application testing, see the README in the tests directory.
Tests
The tests are located in the tests directory. Run directly from Docker image
docker run -it -v $PWD/yii-project:/app -w /app yiisoftware/yii2-php:7.2-apache bash
The above is the detailed content of The Yii3.0 era is coming, why not take a sneak peek?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

YiiassetbundlesorganizeandmanagewebassetslikeCSS,JavaScript,andimagesinaYiiapplication.1.Theysimplifydependencymanagement,ensuringcorrectloadorder.2.Theypreventduplicateassetinclusion.3.Theyenableenvironment-specifichandlingsuchasminification.4.Theyp

In the MVC framework, the mechanism for the controller to render views is based on the naming convention and allows explicit overwriting. If redirection is not explicitly indicated, the controller will automatically find a view file with the same name as the action for rendering. 1. Make sure that the view file exists and is named correctly. For example, the view path corresponding to the action show of the controller PostsController should be views/posts/show.html.erb or Views/Posts/Show.cshtml; 2. Use explicit rendering to specify different templates, such as render'custom_template' in Rails and view('posts.custom_template') in Laravel

When saving data to the database in the Yii framework, it is mainly implemented through the ActiveRecord model. 1. Creating a new record requires instantiation of the model, loading the data and verifying it before saving; 2. Updating the record requires querying the existing data before assignment; 3. When using the load() method for batch assignment, security attributes must be marked in rules(); 4. When saving associated data, transactions should be used to ensure consistency. The specific steps include: instantiating the model and filling the data with load(), calling validate() verification, and finally performing save() persistence; when updating, first obtaining records and then assigning values; when sensitive fields are involved, massassignment should be restricted; when saving the associated model, beginTran should be combined

TocreateabasicrouteinYii,firstsetupacontrollerbyplacingitinthecontrollersdirectorywithpropernamingandclassdefinitionextendingyii\web\Controller.1)Createanactionwithinthecontrollerbydefiningapublicmethodstartingwith"action".2)ConfigureURLstr

The method of creating custom operations in Yii is to define a common method starting with an action in the controller, optionally accept parameters; then process data, render views, or return JSON as needed; and finally ensure security through access control. The specific steps include: 1. Create a method prefixed with action; 2. Set the method to public; 3. Can receive URL parameters; 4. Process data such as querying the model, processing POST requests, redirecting, etc.; 5. Use AccessControl or manually checking permissions to restrict access. For example, actionProfile($id) can be accessed via /site/profile?id=123 and renders the user profile page. The best practice is

AYiidevelopercraftswebapplicationsusingtheYiiframework,requiringskillsinPHP,Yii-specificknowledge,andwebdevelopmentlifecyclemanagement.Keyresponsibilitiesinclude:1)Writingefficientcodetooptimizeperformance,2)Prioritizingsecuritytoprotectapplications,

TouseActiveRecordinYiieffectively,youcreateamodelclassforeachtableandinteractwiththedatabaseusingobject-orientedmethods.First,defineamodelclassextendingyii\db\ActiveRecordandspecifythecorrespondingtablenameviatableName().Youcangeneratemodelsautomatic

AYiideveloper'skeyresponsibilitiesincludedesigningandimplementingfeatures,ensuringapplicationsecurity,andoptimizingperformance.QualificationsneededareastronggraspofPHP,experiencewithfront-endtechnologies,databasemanagementskills,andproblem-solvingabi
