ThinkPHP框架 祖辈分的理解 【儿子 FenyeController】继承了【父亲 FuController】继承了【祖辈 Controller】的

注:系统自带的Controller方法代表的是祖辈    FuController控制器是自定义的,代表父亲。。。        FenyeController控制器就代表着儿子     

【儿子  FenyeController】继承了【父亲  FuController】继承了【祖辈 Controller】的

在模块控制器Controller文件夹里创建一个简单的 LoginController.class.php控制器
<?php
namespace Admin\Controller;
use Think\Controller;
class LoginController extends Controller{

    public function login(){

        session(‘uid‘,‘zhangsan‘);//存一个session值
    }

}
在模块控制器Controller文件夹里创建一个简单的 FuController.class.php控制器
 
<?php
namespace Admin\Controller;
use Think\Controller;
class FuController extends Controller{//造一个FuController控制器,用来判断session值是否存在。

    public function __construct(){//造一个构造函数

        parent::__construct(); //调用父类构造  不调用此方法再次访问显示页面时会报错!

        if(session("?uid")){//判断session是否存在,如果存在,什么也不做。

        }else{//如果不存在就将它直接打回登录页面去登录

            $this->redirect("Admin/Login/login", array(), 3, ‘请登录....‘);//第一个参数是跳转的地址,第二个参数是要传的值,第三个参数是跳转的时间,第四个参数是跳转时的提示信息。
            exit;
        }
    }

}
<?php
namespace Admin\Controller;
use Admin\Controller\FuController;
class FenyeController extends FuController{//这里继承的父类更改为FuController

    public function xianshi(){
        $c = D("chinastates");
        $shuliang = $c->count();//求出总数量
        $page = new \Admin\page\Page($shuliang,15);//分页类对象
        //var_dump($page);
        $xinxi = $page->fpage();//调出fpage()分页信息

        $attr = $c->limit($page->limit)->select();//调出分页里的limit()方法,

        $this->assign("shuju",$attr);
        $this->assign("xinxi",$xinxi);
        $this->show();

    }
}
时间: 2024-08-08 09:41:44

ThinkPHP框架 祖辈分的理解 【儿子 FenyeController】继承了【父亲 FuController】继承了【祖辈 Controller】的的相关文章

thinkPHP框架 简单的删除和修改数据的做法 和 模板继承的意思大概做法

BiaodanController.class.php控制器页面 <?php namespace Admin\Controller; use think\Controller; class BiaodanController extends Controller{ public function zhuyemian(){ $n = D("nation"); $attr = $n->select(); $this->assign("n",$attr)

ThinkPHP框架快速开发网站

使用ThinkPHP框架快速搭建网站 这一周一直忙于做实验室的网站,基本功能算是完成了.比较有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.如果对于同样是Web方面新手的你有一丝丝帮助,那就更好了挖. 以前用PHP做过一个很蹩脚的网站,为什么这么说呢,因为写的全是死代码.做完以后觉得实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做网站的任务后,我第一时间想到一定要使用开发框架去做,绝不能跟以前一样那么累了. 我选择的是PHP

ThinkPHP框架设计与扩展总结

详见:http://www.ucai.cn/blogdetail/7028?mid=1&f=5 可在线运行查看效果哦 导言:ThinkPHP框架是国内知名度很高应用很广泛的php框架,我们从一些简单的开发示例中来深入了解一下这个框架给我们带来的开发便捷性,以及游刃有余的扩展设计.同时也从源码分析的角度看看框架的一些不足,尽量做全面客观的评价.这里假设大家已经使用过ThinkPHP框架,基本使用方法请参考官方文档. 一.框架分层及url路由 框架的安装非常简单,下载后放入web服务器的目录即可,但

学习ThinkPHP框架必须了解的知识点(一)

1.框架:有大量的类.方法.函数按一定的逻辑组成的集合: 2.MVC(Model-View-Controller):即模型-视图-控制器这种编程模式:  M->Model:实体层,它主要是对数据库的操作:每一个Model.cs文件对于一张数据表,和它相应的数据库库操作:  V->View:视图层,可以简单的理解为模板,主要是展示作用:  C->Controller:控制层(控制器),对数据进行分析.过滤:它向上连接视图层,向它提供从数据口读取的数据,向下连接实体层,控制数据的读取.  M

制作类似ThinkPHP框架中的PATHINFO模式功能(二)

距离上一次发布的<制作类似ThinkPHP框架中的PATHINFO模式功能>(文章地址:http://www.cnblogs.com/phpstudy2015-6/p/6242700.html)已经过去好多天了,今晚就将剩下的一些东西扫尾吧. 上一篇文章已经实现了PATHINFO模式的URL,即我们访问MVC模式搭建的站点时,只需要在域名后面加上(/module/controller/action)即可,很智能化.并且通过new Object时的自动触发函数实现类文件的自动载入,因此只要我们搭

ThinkPHP框架基础知识

ThinkPHP是一个快速.兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库).RoR的ORM映射和ActiveRecord模式. ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支

使用ThinkPHP框架高速开发站点(多图)

使用ThinkPHP框架高速搭建站点 这一周一直忙于做实验室的站点,基本功能算是完毕了.比較有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.假设对于相同是Web方面新手的你有一丝丝帮助,那就更好了挖. 曾经用PHP做过一个非常蹩脚的站点,为什么这么说呢,由于写的全是死代码.做完以后认为实在是累,前端要div+css,js 后端要php,mysql,这么多东西要弄,十分头疼.所以,在接到做站点的任务后,我第一时间想到一定要使用开发框架去做,绝不能跟曾经一样那么累了. 我选择的是PH

ThinkPHP框架 AJAX方法返回 AJAX实现分页例子:

在模块控制器Controller文件夹里创建一个 FenyeController.class.php控制器 <?php namespace Admin\Controller; use Think\Controller class FenyeController extends Controller{ public function xianshi(){ $c = D("chinastates"); $shuliang = $c->count();//求出总数量 $page

ThinkPHP框架模型连贯操作(八)

原文:ThinkPHP框架模型连贯操作(八) Thinkphp的连贯操作使用起来也是很灵活: *可能这里有的mysql函数没全部罗列出来,大家可以举一反三,形式雷同 一.常用连贯操作 1.where 帮助我们设置查询条件 2.order 对结果进行排序 $arr=$m->order('id desc')->select(); $arr=$m->order(array('id'=>'desc','sex'=>'asc'))->select(); 多个字段排序 //数组形式