欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ThinkPHP中where方法中变量不解析的解决方法(亲测有效)

程序员文章站 2022-05-03 20:29:54
2018年5月4日 01:15 血的教训,今天做一个项目,需要批量更新数据,所以where中必须用变量。发现where里的变量不解析并且会直接报错,然后通过搜索发现可以在双引号中的左右加号中包裹变量...

2018年5月4日 01:15 血的教训,今天做一个项目,需要批量更新数据,所以where中必须用变量。发现where里的变量不解析并且会直接报错,然后通过搜索发现可以在双引号中的左右加号中包裹变量,结果是不报错了,但数据表里的记录一直被最后一条覆盖。始终找不到原因,一直以为是for循环哪里出了问题,直到现在才找到这个括号包裹的方法,苦想一天的问题终于解决,于是怀着各种(mmp)的心情下写下这篇文章希望和大家一起回避这些没有明文规范的坑。。。

下面直接上实例:

$envir->where("cityid=($cityid) and reltoday=($i)")->save($newdata);

where语句中变量必须为单引号括起来才可以解析。

据说用双引号括起来结果是不可以的。

具体原因不详!