-
ThinkPHP3.2.3版本中要注意namespace、use以及new时要使用的路径 (1)实例化基础模型Model //$people = new Model('booksphp'); $book = M('booksphp'); //M()方法,实例化基础模型Model,Model类中有各种方法,如select()方法等。 $data = $book->select(); dump($data); (2)实例化用户自定义模型XxxModel //$cats = new \Home\Model\CatsModel(); //不可以使用$cats = new CatsModel(); $cats = D('cats'); //D()方法,如果没有找到CatsModel类(extends Model类),自动加载Model类,等效于M('cats') $cats->getinfo(); $cats->strmake('Roxes'); //$data = $cats->select(); //dump($data); 注意:ThinkPHP3.2.3手册中模型定义一块说明 UserModel 对应数据表 user,所以自定义模型文件命名首字母一定要大写 (3)实例化公共模型 $com = new \Home\Model\CommonModel('article'); //如果不加参数,则会自动寻找数据库中common表单 $com->strmake('Radix'); (4)实例化空模型 //$model = new \Think\Model(); $model = M(); $data = $model->query('select * from booksphp'); dump($data); //$data2 = $model->execute('update booksphp set bookname="Alice" where id=7'); //dump($data2); //读写分离 其中,\Application\Home\Model目录中有CatsModel.class.php文件以及CommonModel.class.php文件。查看全部
-
Tp去掉index.php 1.url模式远2 2.打开阿帕奇文件,搜索write.so 把那一行注释去掉查看全部
-
建与之相对应的模板文件,在view下新建index文件夹,在index.html中输出变量的方法如下:<br> 1、{$me['name']}//数组的形式<br> 2、{$me.name}//类java的形式<br> {//$me.name}//在模板中的注释方式<br> 3、如果在控制器中未定义此变量又想输出,临时赋值方式为:{$me.sex|default='man'} { 与 $ 必须是紧挨着的; 另外,输出数据的话,你必须要写出数组的key。例如:{$name['index']}或者{$name.index},进行运算只能用{$name['index']} {$'变量名'}这种方式叫做模板引擎,即php中绑定到模板(html)中的变量可以通过这种方式直接访问到查看全部
-
模板的赋值和输出 赋值 在(如indexAction.class.php)中设置 方法1.$this->assign('变量名','变量值'); 方法2.$name='张三'; $this->name=$name (变量名) 并且$this->display(); 输出 在模板文件(如index.html)中直接写 <?php echo $name ?>查看全部
-
ThinkPHP3.2.3版本中,没有Tpl文件夹,应该在Appliaction/Home/View下面建立文件夹 才可以。 调用默认index模板时使用$this->display(); 调用建立好的模板 $this->display('test');或$this->display('Index/test')查看全部
-
TP自带dump()函数,可以更人性化的输出数组。查看全部
-
设置伪静态的后缀: 配置参数URL_HTML_SUFFIX = ‘shtml|xml’,设置多个中间用|隔开。查看全部
-
U方法可以对URL进行解析查看全部
-
自定义的配置文件,即使关闭了debug也不会进行缓存,所以尽量避免。查看全部
-
thinkphp3.1版本 1.index.php入口文件的运行流程 1)。加载thinkphp.php 2)。加载核心类thinkphp/lib/core 3)。加载项目的文件 分析url 调用相关控制器 m module 模块 控制器 a action 方法 action=页面 代码: $module=isset($_GET['m'])?$_GET['m']:'Index';//三元表达式判断模块 $action=isset($_GET['a'])?$_GET['a']:'Index';//三元表达式判断方法 $mooc=new $module();//实例化index类 $mooc->$action();//调用action方法 class index{ function __construct(){//构造函数 echo '调用了index控制器'; } function index(){//构造函数 echo '调用了index控制器的index方法'; } }查看全部
-
1. ThinkPHP框架目录结构的解析 common-----存放当前项目的公共函数 conf-------存放当前项目的配置文件 Lang-------存放当前项目的语言包 Lib--------存放当前项目的控制器和模型 Runtime----存放当前项目的运行时的文件,Runtime文件夹下的文件及目录的作用如下: (1)cache----模板的缓存 (2)data-----数据的目录 (3)logs-----日志 (4)temp-----数据缓存(5)common~runtime.php---编译后加载的文件 (6)tpl------存放当前项目的模板文件 2. M模型,C控制器均存放在LIB文件夹里面,V视图存放在TPL文件夹下 3. LIB文件夹 LIB/action----控制器 LIB/behavior----行为管理 LIB/model------模型文件 LIB/widget-----组件查看全部
-
框架是程序结构代码的集合,而不是业务逻辑代码查看全部
-
MVC查看全部
-
1 不推荐使用if判断标签(原因是condition属性使用php语法),尽量用其他标签替代。 2 实在不行就用php原生语法, <php>php语法</php> (原因异步方式使用的都是php原生语法) <foreach name='person' item='data'> <br /><!-- 比较标签 --> <egt name='data.age' value='18'>{$data.name}已成年<else />{$data.name}未成年</egt> </foreach> <br /> <foreach name='person' item='row' > <!-- {$person[1]['age'] >= 18?"yes":"no"} 二维数组--> {$row['age'] >= 18?"成年":"未成年"} <br/> <!-- 三目运算符 --> </foreach> <php>echo $person[1]['name']</php> <!-- 模板中使用PHP -->查看全部
-
1 in notin between notbetween range 2 <in name='变量' value='1,2,3'>在1,2,3里面<else>不在这里面</in> 3 <between name='变量' value='1,10'>在1-10区间<else>不在这区间</in> 4 <range></range>标签 type只能是in和notin 5 <range name='变量' value='1,11,14' type='in'>在1,11,14里的一个数字<else></else>没有这个数</range>查看全部
举报
0/150
提交
取消