TP父类及模板继承
一、TP父类方法继承
session用法
用登录页面做例子
<?php namespace Home\Controller; use Think\Controller; class LoginController extends Controller{ public function login(){ //显示页面,实现登录 if(empty($_POST)){ $this->show(); }else{ //处理登录逻辑 $uid = $_POST["uid"]; $pwd = $_POST["pwd"]; $db = D("Users"); $arr = $db->find($uid); if($arr["pwd"]==$pwd&&!empty($pwd)){ session("uid",$uid); //启动session $url = U("Index/index");//不同控制器下的方法要写控制器名 //不在不同模块下要加上模块名 $this->success("登录成功!",$url); }else{ $this->error("登陆失败!");//默认跳转到上一个界面 } } } }
在以后做项目中有可能做好多页面都需要加session,为了减少代码量可以做个父类,让后面的方法继承就可以了
新建个父类
<?php namespace Home\Controller; use Think\Controller; class BaseController extends Controller{ public function __construct(){ parent::__construct(); if(session("?uid")){ }else{ $this->redirect('Login/login',array(),0,''); exit; } } }
index方法继承
<?php namespace Home\Controller; use Home\Controller\BaseController; class IndexController extends BaseController{ public function index(){ echo session("uid"); } }
父类模板继承