Yii基础学习1


技术QQ交流群:294088839


YII的安装
  第一种方式 通过composer进行安装 通过cmd切换到网站根目录进行安装
  composer global require "fxp/composer-asset-plugin:^1.3.1" 执行命令
  composer create-project --prefer-dist yiisoft/yii2-app-basic basic 执行命令
  第一条命令安装 Composer asset plugin, 它是通过 Composer 管理 bower 和 npm 包所必须的,
  此命令全局生效,一劳永逸。 第二条命令会将 Yii 安装在名为 basic 的目录中。如果你想使用其它目录名称,你可以选择其他目录名称
  composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic basic 安装最新版


  第二种方式 通过网址下载安装 http://www.yiiframework.com/download/ 进行安装


一.目录结构
  web文件是入口文件
  views是模板文件
  vendor是第三方扩展文件
  runtime 日志文件
  models 基本是跟数据库中每张表相对应的类文件,一般是来进行查找数据库的
  controllers 是控制器文件
  config 是配置文件


二.访问路径
  访问控制下的某个方法来进行页面展示
  被前台访问的文件必须用action前缀来修饰控制器中的方法
  render()方法展示views文件下的文件,如果你想让哪个页面内容发生改变,就去控制器中找相对应的render()方法中单词对应
  的是views文件下的文件,在views文件中进行相对应的文件修改


三.Yii一共有两种应用程序模板
   1.基本的应用程序模板  basic应用程序
   basic模板安装后可以直接访问 如果文件在web文件下
   2.高级的应用程序模板  advanced应用程序
   advanced模板安装后
    从cmd中先要执行init.bat文件 选择是开发环境还是生产环境 0代表开发环境
    然后在cmd执行yii初始化文件yii.bat
    advanced模板是需要数据库所以执行完文件需要创建一个数据库 然后修改配置文件
    创建好数据库需要在cmd中 yii.bat下执行 migrate来创建相对应的数据库 然后去数据库会多两张表
    然后就可以访问网站了 前台地址再frontend文件下 前台后台账号密码一直
他们两者的区别在于:高级应用有独立的应用文件夹例如backend和frontend这两个文件中是独立的应用,文件夹中的内容等于是把
基本应用程序复制了两份放在这两个文件中,形成独立的应用。而基本应用程序模板是一个整体,而没有进行详细的区分。


四.控制器命名方式
  以大写字母开始以Controller结尾的.php文件 大驼峰格式
  首先要声明命名空间
  然后继承yii框架中的基类 use yii\web\Controller;
  然后创建一个类,继承这个基类,类名跟文件名一致
url路径格式: http://localhost/index.php?r=Hello/index
  hello属于控制器
  index属于方法
  外部访问的方法必须以action开始以自定义的方法名结尾的方法 例:actionIndex() 方法 必须是驼峰格式。
 例:
   namespace app\controllers;
   //继承框架下基类文件
   use yii\web\Controller;
   class HelloController extends Controller{


       public function actionIndex(){
            echo 'hello word';
       }
   }


五、Yii视图展示
 render() 方法展示视图页面 里面参数是第一个参数是你要展示的页面的名称,第二个页面是你要向视图中要展示的参数,以数组的方式传入
 视图文件在views文件夹中,里面建立相对应控制器名字的文件(文件命名小写),再文件中创建相对应的页面名称也是render()方法中的参数名称
 如果上页面上展示信息
 例:
 控制器中写法:
 namespace app\controllers;
 //继承框架下基类文件
 use yii\web\Controller;
 class HelloController extends Controller{


     public function actionIndex(){
         $a='0573';
         $arr=[
             '1'=>'11',
             '2'=>'33',
             '3'=>'222'
         ];
         //展示页面
         return $this->render('index',
             [
                 'a'=>$a,
                 'arr'=>$arr
             ]
             );
     }
 }
 视图中写法:
 
 
 
     
     测试
 
 
 

hello word


 


 $val){
     ?>
     

         
         :
         
     

 
 
 










           

你可能感兴趣的:(学习总结)