- 一般home目录是前端目录,admin一般是后台
- 添加新模块,快速生成模块目录结构的方法,在入口文件中修改
define('APP_PATH','./Application/');
define('BIND_MODULE','Admin');
表示添加Admin模块,BIND_MODULE 表示绑定入口文件到某个模块
- nginx 对 thinkphp的支持不好,一开始用的时候不知道,老是不支持pathinfo模式,但不知道怎么回事,后来换apache就可以了
- pathinfo模式: http://项目名/入口文件/模块名(home,admin)/控制器名/方法名/参数1/值1/参数2/值2
- 普通模式: http://项目名/入口文件/模块名?m=module&a=action&id1=值1&id2=值2
- 开启调试模式,在入口文件中添加:define(‘APP_DEBUG’,true);在上线时,需要关闭调试模式
- 要展示一个页面,调用display()方法,在里面,要传递的给view的参数可以用 this−>assign(′name′,$data),view中就可以用 name
- 如果不在配置中指定数据库名,则可以在新建model类时指定,如:$m=new Model(‘mydata’);
- $m = new Model(); $arr = m−>select() arr返回而为数组,没有数据库则返回false;
- M()等效为Model()方法,参数 表名虽然不区分大小写,但是尽量首字母大写
- C -> create $m->add() //$$m是模型实例
- R -> read $m->select()
- U -> update $m->save()
- D -> delete $m->delete()
- 前台页面展示后台传递过来的数组
<html><!--后台传递 $this->assign('data',$arr);-->
<body>
<volist name='data' id = 'vo'>
{$vo.id}---{$vo.username}
</br>
</volist>
</html>
- 页面跳转时不用给出主机地址,只要web目录就是根目录,像/thinkphp/index.php/home/user/index,然而:项目变了就不好办了,不要写死,可以用_URL_/user/index,如
<form action='__URL__/user/index'>
- 导入public下的Js文件下的test.js: ` 也可导入css
- 不再public目录导入css文件:
<import type='css' file='Css.test' basepath='./Other'/>
- load标签,非常简单,自动检测
<load href='__PUBLIC__/Css/test.css' />
<load href='__PUBLIC__/Js/test.js' />
<if condition='$age lt 18'>
未成年
<elseif condition='$age eq 18'/><!--单标签-->
青春年少
<else/>
成年
</if>
- if标签condition加变量加$符号,eq标签不用加