标签:pre color 页面 extends logs mvc nbsp function think
创建控制器:
在Controller控制器文件夹里面新建操作方法。(记得命名规则驼峰法命名)
写好控制器后再编辑控制器里面的内容,写操作方法。
<?php namespace Home\Controller; use Think\Controller; class MainController extends Controller //一定要写这句话代表的是继承父类的操作方法 //如果不继承父类它就不是一个操作方法。 { public function index(){ echo "访问了main控制器的index方法"; } public function mains(){ echo "main"; } //所以说一个控制器下面可以有很多个操作方法。 }
前两句话根据以往的控制器原样复制上就可以。
访问页面的时候就可以采用路径访问就可以。如下图访问
这里的操作方法只输出了一句话,如果想访问这个操作方法显示出来页面的话,需要在把echo里面的内容换成一个模板
找一个模板扔到Home文件夹里面的View文件夹下。(因为这个View文件夹里面主要放模板) 因为操作方法名叫做index,所以需要把
这个模板文件名称改成index.html。做到这一步还是不行的。控制器可以直接扔到controller控制器文件夹里面。但是模板文件index.html不能直接扔到
View视图层里面。因为一个控制器下面可以有多个操作方法,每个操作方法里面可以有一个页面。也就是每个控制器里面可以有多个操作方法,每个操作方法
在访问的时候都可以显示一个模板文件的。(比如说main控制器里面有个index页面,index控制器里面有个index页面,这样就造成重名了。)所以模板文件直接扔到
View文件夹下是不行的。
具体放模板文件的操作方法是:
在View视图层文件夹里面新建一个以控制器命名的文件夹main,再将模板文件index.php模板文件扔到刚建好的以控制器命名的文件夹里面
这样的话再访问main控制器的index的时候,它会直接过来找View文件夹里面的Main文件夹里面index.html。
所以你如果想添加模板文件的话需要去View视图层模板文件里面新建一些文件夹出来。这些文件夹对应的就是控制器名称。(这也是一种规则)
然后再在相对应的控制器里面的操作方法里面写上调用模板的内容
$this这个对象是控制器的对象。直接用$this调用display这个方法就可以显示出对应的模板文件了。
smarty模板里面display()里面给了一个参数,是页面名称,模板名称。
但是TP框架不用写这个参数了,因为TP框架遵循的是MVC模式。MVC模式里面是有约定的。所以在TP框架里面
调用模版文件$this->display();括号里面不用写模板名称。
TP里面也可以用$this->show();来显示模板文件 它等于$this->display();(建议用$this->show();)
在TP框架里面也可以使用smarty模板里面的一个方法叫做$this->assign();注册变量的方法
在index操作方法里面注册了一个变量test然后到相对应的模板文件里面显示
结果就会显示出变量的值。跟smarty模板里面的用法一样。
标签:pre color 页面 extends logs mvc nbsp function think
原文地址:http://www.cnblogs.com/shandayuan/p/7409911.html