前言概述:

我是一名PHP开发工程师,最拿手的是版本2.0的Yii框架,在培训班里老师没教我Yii框架,只是由于我弟弟(同行)擅长Yii框架,所以我用得最多的就是Yii2.0,后台我学了ThinkPHP框架的3.2和5.0版本,虽然还算不上熟练,但是多少会用,自己分别用tp3.2和5.0做了两个具有RBAC权限验证功能(3.2是Auth)和基本的增删查改功能的网站后台。至于Yii2,这三年多来,我用它做了多个网站,例如我的个人网站。

框架之争:

很多php初学者都不知道选哪个框架来深入学习。据我所知,国内的php程序员用得最多的框架是ThinkPHP,版本以3.2和5.0为代表。目前主流的php框架有ThinkPHP、Yii、Lavavel、CI等(排名不分先后,各自的支持者们请不要打架)。我对ThinkPHP和Yii框架都有所了解,所以我多少有点发言权,我觉得还是Yii好,有众多优点是ThinkPHP无法企及的,例如有自动生成代码的gii。话虽如此,其它框架的使用者们可能不服,他们可以说出一大堆他们框架的优点。这里我不再赘述,请大家自行百度,到此为止。

必备知识:

在开始学习Yii之前,你必须掌握html、css、javaScript、jQuery、php的基本知识,理解MVC思想的基本常识,以及类、函数的调用等。

官方资料:

1.https://www.yiichina.com

2.https://www.yiiframework.com

3.https://www.kancloud.cn/kancloud/programming-with-yii2

现在开始:

一 .

1.从yii官网 https://www.yiichina.com 或其它渠道下载高级版本(这里以高级版本为例)到你本地电脑的php项目根目录下,可以给下载下来的文件夹改名。

2.如果你是在你本地电脑(一般是window系统)开发这个网站,请双击根目录下的init.bat文件完成项目的初始化,在弹出的命令界面里操作,在本地就选development,线上就选production,输入代表它们的数字,按回车键,输入yes按回车就行了。这样,frontend和backend的web和config下,以及common和console的config目录下就会自动生成对应的配置文件了;如果你是把项目文件夹上传到linux系统的服务器里,

3.用phpStudy配置两个本地域名:一个前台域名指向到项目根目录下的frontend\web下,一个后台域名指向到项目根目录下的backend\web下。

4.在根目录下的common/config/main-local.php文件里配置数据库的信息,我建议配置成线上的数据库(也就是要求你要有服务器或虚拟云盘,但是代码可以不用上传到服务器里,放在本地即可),这样是方便配合版本控制(我用的是git),每次在公司电脑做好一些功能后,下班前把代码上传到码云或github等代码托管平台,不用上传修改后的数据库文件(因为我很多次都会忘记上传数据库文件,所以我建议把数据库放在线上),回到家里把代码拉下来后,就可以在家里办公,做完上传代码即可。

5.还是在根目录下的common/config/main-local.php文件里配置免费发送邮件的信息:

'mailer' => [
  'class' => 'yii\swiftmailer\Mailer',
  'viewPath' => '@common/mail',
  'useFileTransport' =>false,//这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件
  'transport' => [
    'class' => 'Swift_SmtpTransport',
    'host' => 'smtp.qq.com', //每种邮箱的host配置不一样,这里以qq邮箱为例,其它请自行百度。
    'username' => 'wangyutan1986@qq.com',
    'password' => 'nrjmg******bbdgi', //授权码相当于密码,到你自己的邮箱里申请获取即可,可以不用记起来。
    'port' => '465',
    'encryption' => 'ssl',
  ],
  'messageConfig'=>[
    'charset'=>'UTF-8',
    'from'=>['wangyutan1986@qq.com'=>'MRRS']
  ],
],

6.把根目录下的common/config/params.php文件里的adminEmail和supportEmail的值改为你的邮箱,例如上面的wangyutan1986@qq.com

1.给后台安装adminLTE,可参考:https://www.kancloud.cn/curder/yii/247760

要安装AdminLTE v2,请用cmd调起命令行工具,运行:

composer require dmstr/yii2-adminlte-asset "^2.1"

要安装AdminLTE v1,请运行:

composer require dmstr/yii2-adminlte-asset "^1"
建议安装最新版本。

如果太慢了,可以考虑国内镜像。接下来就是坐等下载好,这个过程有时候会比较久,而且命令行工具里没有任何提示,请保持耐心别乱动它。

手把手教你入门Yii2框架-1的更多相关文章

  1. Android开发之手把手教你写ButterKnife框架(三)

    欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/52672188 本文出自:[余志强的博客] 一.概述 上一篇博客讲了, ...

  2. Android开发之手把手教你写ButterKnife框架(二)

    欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/52664112 本文出自:[余志强的博客] 上一篇博客Android开 ...

  3. 手把手教你搭建SSH框架(Eclipse版)

    原文来自公众号[C you again],若需下载完整源码,请在公众号后台回复"ssh". 本期文章详细讲解了SSH(Spring+SpringMVC+Hibernate)框架的搭 ...

  4. 手把手教你写DI_1_DI框架有什么?

    DI框架有什么? 在上一节:手把手教你写DI_0_DI是什么? 我们已经理解DI是什么 接下来我们就徒手撸一撸,玩个支持构造函数注入的DI出来 首先我们回顾一下 构造函数注入 的代码形式, 大概长这模 ...

  5. 手把手教你 在Pytorch框架上部署和测试 关键点人脸检测项目DBFace,成功实现人脸检测效果

    这期教向大家介绍仅仅 1.3M 的轻量级高精度的关键点人脸检测模型DBFace,并手把手教你如何在自己的电脑端进行部署和测试运行,运行时bug解决. 01. 前言 前段时间DBFace人脸检测库横空出 ...

  6. Android开发之手把手教你写ButterKnife框架(一)

    欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/52662376 本文出自:[余志强的博客] 一.概述 JakeWhar ...

  7. 入职第一天:前端leader手把手教我入门Vue服务器端渲染(SSR)

    继前段时间西安电面之后顺利拿到了OFFER,今天(5月2号)是我入职第一天,在简短的内部培训了一上午后,前端leader让我先了解下什么是vue的服务器端渲染(SSR). SSR,英文全称叫 Serv ...

  8. 手把手教你整合SSM框架(基于课工厂+MyEclipse 2017 CI 10)

    步骤1:myeclipse创建项目,导入spring框架 整合思路:因为spring和spring mvc同源,可以无缝整合,故先整合spring+mybatis,然后配置web.xml.spring ...

  9. 手把手教你入门mac idea

    一.前沿 去年入职后, 公司有很多人使用的是idea , 而不是eclipse. 之前就想转向idea, 但一直没转过来~~原因是团队的人提倡用开源eclipse.现在下定决心转向idea. 虽然, ...

随机推荐

  1. 修改序列(Sequence)的初始值(START WITH)

    1 执行:Alter Sequence SeqTest2010_S Increment By 1007; 2 执行:Select SeqTest2010_S.NextVal From Dual; 3 ...

  2. tornado+peewee-async+peewee+mysql(一)

    前言: 需要异步操作MySQL,又要用orm,使用sqlalchemy需要加celery,觉得比较麻烦,选择了peewee-async 开发环境 python3.6.8+peewee-async0.5 ...

  3. 十六、JavaScript之%运算符

    一.代码如下 二.运行效果如下 <!DOCTYPE html> <html> <meta http-equiv="Content-Type" cont ...

  4. U盘安装Debian KDE 输入法 Manjaro Linux WPS 字体

    Manjaro: 首先下载Manjaro Linux,然后用USBWriter(https://pan.baidu.com/s/1bZGb5k)写入,重启选择USB启动. 更改软件仓库(Debian称 ...

  5. POJ 1177/HDU 1828 picture 线段树+离散化+扫描线 轮廓周长计算

    求n个图矩形放下来,有的重合有些重合一部分有些没重合,求最后总的不规则图型的轮廓长度. 我的做法是对x进行一遍扫描线,再对y做一遍同样的扫描线,相加即可.因为最后的轮廓必定是由不重合的线段长度组成的, ...

  6. 数论 CF27E Number With The Given Amount Of Divisors

    求因子数一定的最小数(反素数) #include<iostream> #include<string> #include<cmath> #include<cs ...

  7. 吴裕雄--天生自然C++语言学习笔记:C++ 指针

    每一个变量都有一个内存位置,每一个内存位置都定义了可使用连字号(&)运算符访问的地址,它表示了在内存中的一个地址. #include <iostream> using namesp ...

  8. ELK 教程

    自从ELK首次推出以来,下载量达到了数百万次,是世界上最流行的日志管理平台.相比之下,Splunk - 该领域的历史领先者 - 宣布的客户总数才15000人. 章节 ELK 介绍 ELK 安装Elas ...

  9. hdu 1087 最长上升序列和 dp

    Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  10. V-Distpicker不能完整显示内容

    V-Distpicker插件在列表中,或者在dialog中只显示了第一次的内容,第二次就开始报错.这个和前篇中的地图问题其实如出一辙. 解决办法,重加载,局部刷新. <el-form-item ...