改动
就像当初 Yii2.0 时代降临 Yii1.0 终将灰暗,Yii3.0 版本推出势必掀起 Yii 框架的波澜,那么Yii3.0 相比 Yii2.0 究竟做了哪些改动呢?
一睹为快:Yii3.0 版本改动
Yii3.0 框架简介
Yii3.0 框架是一个骨架应用程序,最适合快速创建项目。
该框架包含基本功能,包括用户登录/注销和联系页面。它包括所有常用配置,使您可以专注于为应用程序添加新功能。
目录结构
config/ 包含应用配置public/ 包含入口脚本,已发布的资源和其他公开可用的文件,例如favicon.ico和robots.txt runtime/ 包含运行时生成的文件 vendor/ 包含依赖的第三方包 .env .env.dist composer.json docker-compose.yml
要求
Web服务器支持PHP 7.1 是 Yii3.0 框架的最低要求。
安装
如果您没有 Composer,可以按照 getcomposer.org 上的说明进行安装。
然后,您可以使用以下命令安装此项目模板:
composer create-project --prefer-dist --stability = dev yiisoft / yii-project-template myapp cd myapp
这为您提供了一个空项目,您可以添加应用程序模板,请参阅以下有关如何添加这些项目的部分。
根据您的系统,您可能需要为
./runtime
和./public/assets
提供写入权限
CLI 应用
如果要安装运行自己的控制台命令所需的控制台应用程序,可以通过加载yiisoft / yii-base-cli 软件包来实现。
composer require yiisoft/yii-base-cli
您现在可以运行yii help
来查看可用的命令。
API 应用
如果要创建API,可以通过加载 [yiisoft / yii-base-api](https://github.com/yiisoft/yii-base-api)包来实现
composer require yiisoft/yii-base-api vendor/bin/yii serve -p 8081
您可以通过http:// localhost:8081 /
访问API。
Web 应用
由于Web应用程序使用客户端资源(例如CSS和Javascript),因此首先选择资源分配系统
方案a:Asset-packagist和composer-merge-plugin(只需要PHP
)
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"
方案b:Foxy (需要 npm
或者 yarn
)
composer require "foxy/foxy:^1.0.0"
现在,您可以安装Web应用程序库及其依赖项
composer require yiisoft/yii-base-web vendor/bin/yii serve
现在您应该可以通过http://localhost:8080/
访问该应用程序。
您可以在 GitHub 上找到更多可用的应用程序库。
Docker
克隆存储库并创建环境配置文件
cp .env.dist .env
要运行安装,请从PHP映像创建bash
docker-compose run --rm php bash
并运行上面的composer
命令。
启动应用程序堆栈
docker-compose up -d
通过浏览器访问
http://docker.host:30080
配置
数据库
编辑数据库配置文件config/db.php
,并添加真实的配置,例如:
return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2basic', 'username' => 'root', 'password' => '1234', 'charset' => 'utf8', ];
提示: - Yii不会为您创建数据库,必须先手动完成,然后才能访问它。 - 检查并编辑config /
目录中的其他文件,根据需要自定义应用程序。 - 有关基本应用程序测试的信息,请参阅tests
目录中的README。
测试
测试位于tests
目录中。
直接从Docker镜像运行
docker run -it -v $PWD/yii-project:/app -w /app yiisoftware/yii2-php:7.2-apache bash