控制器的名称采用驼峰命名法(首字母大写)
快捷函数
U() 制作url地址的快捷函数
同控制器 U("方法名")
不同控制器的地址 U("控制器名,方法名")
不同模块的地址 U("模块名,控制器名,方法名")
C()读取配置
动态配置:在某些地方需要某些配置,就在那里写
C(名称) 获得配置变量(convertion.php config.php)信息 例:$model = C('URL_MODEL');
C(名称,值) 设置配置变量信息 C('URL_MODEL',0);
L() 获得语言变量信息
E() 给页面输出错误信息
A("项目://模块/控制器") 实例化控制器对象
A("Home/User") 实例化User控制器对象
A("book://Home/User") 实例化book项目的Home模块的User控制器对象
前置操作:在调用这个方法之前需要执行的操作
后置操作:在调用这个方法之后需要执行的操作
例:
//前置操作方法 public function _before_xianshi() { echo '我在显示之前<br/>'; } public function xianshi() { echo "主页面显示<br/>"; } //后置操作方法 public function _after_xianshi() { echo '我在显示之后<br/>'; }
action参数绑定
public function xianshi($name,$ids) { echo $name.ids."主页面显示<br/>"; }
从html页面向controller页面传参数
方法一:路径方式 (GET方式)
传一个参数:
http://localhost:8080/thinkphp/index.php/home/main/xianshi/name/zhangsan
传二个参数:
http://localhost:8080/thinkphp/index.php/home/main/xianshi/name/zhangsan/ids/666
取值时方法一:
在方法里写参数,例:
function XianShi($name,$ids)
{
}
取值时方法二:
GET数组,例:
function XianShi() { $name=$_GET["name"]; $ids=$_GET["ids"]; }
方法二:poet方式
show.html
<form action="__CONTROLLER__ /Test" method="post"> <input type="text" name="name" /> <input type="submit" value="提交" /> </form>
MainController.class.php
function Show() { $this->display(); } function Test($name) { echo $name; }
大小写区分设置,默认false 表示URL区分大小写 true则表示不区分大小写 'URL_CASE_INSENSITIVE' => true, 模板引擎普通标签开始标记 'TMPL_L_DELIM' => '<{', 模板引擎普通标签结束标记 'TMPL_R_DELIM' => '}>',
在模板里显示从控制器里添加的值
public function Ceshi() { $this->assign("test","hello");//注册变量 $this->display(); }
ceshi.html页面里
<div><{$test}></div>
输入变量
POST方法:
public function xianshi() { echo $_POST["name"]; }
ceshi.html页面里
<form action="/thinkphp/index.php/home/main/xianshi" method="post"> <input type="text" name="name" /> <input type="submit" value="提交"/> </form>
获取系统常量信息(如果加参数true,会分组显示)
public function Ceshi() { var_dump(get_defined_constants(true)); }
__CONTROLLER__ 自动获取到控制器
__ROOT__ 放在哪个根目录之下
__APP__ 取到入口文件
__MODULE__当前模块
__SELF__ 当前的操作方法(包括操作方法后的参数)
__ACTION__ 当前的操作方法(不包括操作方法后的参数)
同一个方法实现多个逻辑
public function login() { //实现两个逻辑,显示页面,实现登录 if(empty($_POST)) { $this->display(); } else { //实现登录 echo "实现登录"; } }