Thinkphp小知识点

1 在将数据库查询的值传到模板时

  除了传统的方法

1 $wi=M('wish');
2 $result=$wi->select();
3 $this->assign('res',$result);
4 $this->display();

还可以这样:

1 $wi=M('wish');
2 $result=$wi->select();
3 $this->res=$result;
4 $this->display();

 2 文件的写入和读取

传统方法

1 //写入方法
2 $str="<?php return :.var_export($arr,true).";?>";
3 file_put_contents("./data/test.php",$str);
4 
5 //读取方法
6 $s=include('./data/test.php');

新写法

1 //写入方法
2 F('test',$arr,'./Data/');
3 //读取方法
4 $a=F('test','','./Data/');

 3  修改模板默认__PUBLIC__的指向,我试过直接在config.php中定义

1 '__PUBLIC__' => '/'.APP_NAME.'/Index/Tpl/Admin/Public'

这样输出来的结果

C('__PUBLIC__');//显示app/Index/Tpl/Admin/Public,和上面定义的一致

的确是我们修改的结果,不过模板里面却还是按照默认的解析.所以我们这样修改不行,我们修改的主要目的就是为了模板,所以应该这样修改

1 'TMPL_PARSE_STRING' => array('__PUBLIC__' => __ROOT__.'/'.APP_NAME.'/Index/Tpl/Admin/Public')

 4 模板中引入css和js

1 //在模板中使用
2 <css file=''>
3 <js file=''>

 5  调用分页类

1 import('ORG.Util.Page');
2 $count=M('user')->count();
3 $page=new Page($count,10);
4 
5 $limit=$page->firstRow.','.$page->lastRows;
6 
7 $user=M('user')->order('time DESC')->limit($limit)->select();
8 
9 $this->page=$page->show();//将分页传输到模板上面

 6  模板中使用if语句

1 <if condition=''>//此处的条件数组元素只能写$v['test'],不能写$v.test
2 <else/>
3 </if>

 7 表单传参处理

1 I('pid',0,'intval');//无论是post还是get都可以,0是默认值

 8 修改模板的默认点号解析

'TMPL_VAR_IDENTIGY'=>'array'

 9 定制错误页面

'TMPL_EXCEPTION_FILE'=>'./public/404.html'

 

posted @ 2013-10-03 16:21  搁浅St  阅读(312)  评论(0编辑  收藏  举报