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");
}
}

父类模板继承