2019独角兽企业重金招聘Python工程师标准>>>

接触TP其实也蛮久了.  2009 年就开始用过.

1. join()方法不会对__PREFIX__ 和 __TABLE__进行解析

2. I方法在DWZ中取值要注意

3. select() 时若字段不存在会被忽略,delete() 同 ,  find()时也一样

4. Core/ThinkPHP/Lib/Core/Model.class.php 一处bug伤了我半个钟头以上,原因是有个表中有个字段是这样的:

'prz_givingday_type' => 'enum(\'interval\',\'specific\')

然后再看TP源码:

@@ -577,7 +577,7 @@ class Model {protected function _parseType(&$data,$key) {if(empty($this->options['bind'][':'.$key])){$fieldType = strtolower($this->fields['_type'][$key]);if(false === strpos($fieldType,'bigint')
&& false !== strpos($fieldType,'int')) {$data[$key]   =  intval($data[$key]);}

如果有字段中包含int 字眼,那么,此字段的值即使是字符串的,也会被强制置0

我的修改:

-            if(false === strpos($fieldType,'bigint')
&& false !== strpos($fieldType,'int')) {
修改为:
+            if(false === strpos($fieldType,'bigint')
&& 0=== strpos($fieldType,'int')) {

其实这个坑是由于TP的作者考虑不太全面,而且没有注意 PHP中的strpos函数的特殊性.

5. create()前面注意加field 限制,要不然会造成很严重的安全漏洞.

转载于:https://my.oschina.net/ihacklog/blog/225616

使用ThinkPHP过程中发现的一些坑相关推荐

  1. 探讨:在Mac新系统下安装新版XAMPP过程中遇到到的坑以及解决办法

    探讨:在Mac新系统下安装新版XAMPP过程中遇到到的坑以及解决办法 简介 XAMPP安装 XAMPP 是个啥? 安装XAMPP 新版问题:IP地址访问不再是localhost 操作问题:apache ...

  2. Centos7+mysql57+python3安装过程中踩过的坑

    Centos7+mysql57+python3安装过程中踩过的坑 说明: 为了练习Django项目,准备在虚拟机中安装Centos7+mysql57+python3.在windows环境下通过Navi ...

  3. ubuntu 系统使用过程中发现桌面突然放大,屏幕跟着鼠标走

    ubuntu 系统使用过程中发现桌面突然放大,屏幕跟着鼠标走 解决方法: Alt+鼠标滑轮 可以缩放桌面,问题解决 附:dconf reset -f / 可以将桌面恢复到默认配置

  4. @Value注解使用过程中遇到的一些坑

    笔者结合之前的一些经验教训,再结合一些资料总结了一下@Value注解使用过程中的一些注意事项. 目录 一.@Value无法读取配置文件中的参数 二.@Value出现中文乱码 三.@Value使用的一些 ...

  5. azkaban的部署过程中遇到的一些坑(部署篇)

    2019独角兽企业重金招聘Python工程师标准>>> 1.azkaban源码下载 maven下载地址3.0.0版本:https://gitee.com/wenhaijin_830_ ...

  6. libx264编码过程中修改码率踩坑记录

    问题来源于项目中的一个需求,根据当前网络环境实时调整libx264的码率参数,从而让视频播放更加流畅. 1.设置码率调整算法为ABR. 2.初始化,并提供一个接口供探测网络环境的线程调用.写法大概类似 ...

  7. 服务器安装Windows Server 2008 R2系统过程中遇到的一些坑

    最近客户的一台安装了Windows Server 2008 R2操作系统的服务器老是蓝屏死机,这时候服务器的负载比较高.蓝屏代码如下: 由上图可知,蓝屏代码为0x000000c5,网上搜索大多数都说是 ...

  8. 程序员、工程师使用mac电脑过程中遇到的各种坑汇总

    由于mac电脑的电源待机时间超长,操作便利,系统响应快,超能的命令行,便于携带,越来越多程序猿们开始从windows转向mac.鉴于目前大部分应用都是先有windows版本,然后再开发mac版本,因此 ...

  9. 日常使用计算机过程中发现的中断,2010年会计从业考试《初级电算化》章节习题及答案(5)...

    第五章 1.当月的记账凭证必须全部记账,如有未记账的当月凭证,系统将( ) A.不能结账 B.继续结账 C.放到下月 [答案]:A 2.往来账管理的往来客户档案的设置其最主要内容是( ) A.客户编辑 ...

最新文章

  1. qregexp限制数字范围_计算一列数字的平均值
  2. ASP.NET MVC 2 模型验证
  3. PostgreSQL、Greenplum 日常监控 和 维护任务
  4. 手机计算机数据消失了怎么恢复,电脑突然黑屏闪退之后怎么恢复丢失的数据
  5. 计算机编程英语用语,计算机编程英语词汇
  6. 第14章:傅里叶变换
  7. Hive内部表与外部表区别详细介绍
  8. 基于高斯分布的异常检测算法 项目描述
  9. 新rust怎么拆除围墙_“问题围挡”拆除 街道变漂亮了
  10. 给被Access过大问题困扰的网站,提供几种解决方案
  11. ssm共享图书管理系统毕业设计-附源码151121
  12. 国际结算习题集及答案
  13. 【OpenCV】特征检测器 FeatureDetector
  14. 《房地产周期》pdf、mobi、epub、txt下载
  15. php邮箱必填,discuz关闭邮箱注册必填选项
  16. 前端必读:浏览器工作原理
  17. 〖Python 数据库开发实战 - Python与MySQL交互篇④〗- 数据库连接池技术
  18. 谷粒商城 高级篇 (十四) ---------- 商品详情
  19. 鲁兴海:英国皇室裁缝合作伙伴--地方--人民网
  20. 音频交流会(个人学习向项目)

热门文章

  1. 操作无法完成.键入的打印机名不正确,或者指定的打印机没有连接到服务器上.有关详细信息,请单帮助...
  2. C++和python先学哪个
  3. 零基础入门学习Python,我与python的第一次亲密接触后的感受!
  4. python request file upload_Python基于requests实现模拟上传文件
  5. php 跨进程读写,php使用多个进程同时控制文件读写示例
  6. 关于学习tf.random.normal()和tf.random.uniform()的一点小总结
  7. 关于学习Python的一点学习总结(2->列表)
  8. 【每日训练】2020/11/9(Splay ?rope大法好!、数论、构造补图)
  9. 0x17.基础数据结构 - 二叉堆
  10. linux端口找进程,Linux查看端口、进程情况及kill进程的方法