ThinkPHP许愿池 笔记

本文介绍了ThinkPHP框架的实用技巧,包括如何加载自定义函数文件、配置模板常量、使用U()函数获取URL、防范JS注入等。还涉及了表单处理保护、错误页面自定义及缓存操作等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. common文件夹下如果要放除了“common.php”以外的其他函数文件,可以在config文件数组中加入"LOAD_EXT_FILE"=>"文件名(没有扩展名)"来引入。

2. 临时调用common文件夹下如果要放除了“common.php”以外的其他函数文件中的函数,可以这样写load('@.function'),function为文件名不带后缀,就可以用这个文件中的函数了。

3. 替换模板常量,可以在config中直接定义目录比如 “__PUBLICK__” => "/sss/ss/"

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'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值