ThinkPHP笔记
1. common文件夹下如果要放除了“common.php”以外的其他函数文件,可以在config文件数组中加入"LOAD_EXT_FILE"=>"文件名(没有扩展名)"来引入。
2. 临时调用common文件夹下如果要放除了“common.php”以外的其他函数文件中的函数,可以这样写load('@.function'),function为文件名不带后缀,就可以用这个文件中的函数了。
3. 替换模板常量,可以在config中直接定义目录比如'TMPL_PARSE_STRING'=> array('__PUBLIC__' => '../Public'),
4. U()函数用来获取url。U("Index/index",参数[数组],伪静态后缀[asp/php...],是否跳转[1/0],是否显示域名[0/1]),参数数组array('aid'=>10,'action'=>'edit')
5.更改伪静态后缀名。在config中定义“URL_HTML_SUBFFIX” => "html/asp/php/xxx"
6. I() 函数获取参数比如 $username = I("username"); 但是容易被js脚本注入,需要用到其他参数 I("username",默认值,对值进行处理的函数)
7. 利用IS_POST来防止直接访问表单处理函数
8. _404(提示信息,跳转url) 函数
9. halt()函数显示详细错误信息
10. 模板调用自定义函数{$time|data="y-m-d H:i",###} ###就代表了$time
11. {$v.id}这样会自动判断是数组还是对象。配置模板中参数是数组还是对象,在config文件中‘TMPL_VAR_IDENTIFY’ => 'array',这样可以省去判断的过程,所以速度会快一些,但是前提是要保证系统中都是数组不是对象
12. 模板中{:mt_rand(1,5)}等于 <?php echo mt_rand(1,5); ?>
13. 开启分组 在config中“APP_GROUP_LIST” =>"Index,Admin",默认分组“DEAULT_GROUP” => 'index"
14. 开启分组之后可以单独定义config。php和common文件件下的函数库。
15. 自定义错误页面在config中配置“TMPL_EXCEPTION_FILE” => "./xxx/xxxx/xxx/xx/xxx.html" 可以接受参数 <?php echo $e['message']; ?>,action文件中要用halt("说明"),说明文字即可显示在错误页面中。
16. 缓存时可用,写入文件的方法:
$array = array{ 'a'=>'b', 'b'=>'c' , }; $str = "<?php return ".var_export($array,1)."?>"; file_puts_content('./xxx/xxx.php',$str);
在ThinkPHP中的方法:F("文件名",$str,'路径');
17. session数据库存储,在config中定义“SESSION_TYPE” => 'Db'