使用TinkPHP实现品字形布局
一、后台管理模版
后台管理模版通常使用frameset/iframe来布局。例如:
<!DOCTYPE html> <html> <head> <title>frameset</title> </head> <body> <frameset> <frame src="left.html"></frame> <frameset> <frame src="left.html"></frame> <frame src="right.html"></frame> </frameset>> </frameset> </body> </html>
但是在使用框架开发中我们不会去直接访问一个页面,而是通过访问一个控制器来获取一个被渲染的模版。针对上面的品型结构来实现一个控制器。
二、控制器
<?php namespace Home\Controller; use mysqli; use Think\Controller; /** * */ class IndexContoller extends Controller{ //渲染主视图 public function index(){ $this->display(); } //渲染顶部视图 public function top(){ $this->display(); } //渲染左部视图 public function left(){ $this->display(); } //渲染右部视图 public function right(){ $this->display(); } }
三、模版
- index.html
<!DOCTYPE html> <html> <head> <title>frameset</title> </head> <body> <frameset> <frame src="localhost/Applaction/Home/Idex/top"></frame> <frameset> <frame src="localhost/Applaction/Home/Idex/left"></frame> <frame src="localhost/Applaction/Home/Idex/right"></frame> </frameset>> </frameset> </body> </html>
这里的src全部替换成相应的控制器
- 其它视图
<!DOCTYPE html> <html> <head> <title>frameset</title> </head> <body> This is top This is left This is right </body> </html>
四、常量使用
ThinkPHP中已经定义了许多常量,我们可以直接拿来使用。
查看系统已定义常量,get_defined_constants就是用来获取所有常量的函数。
public function getServerConst(){ var_dump(get_defined_constants(true)); }
经常使用与路径相关的常量有以下一些
这是我的项目结构:
直接在HTML中使用常量
访问结果