Thinkphp M 中的 where 失效问题

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:56   1619   0

在编写Thinkphp框架的项目时,使用M方法很方便,但有时使用where等方法生成sql语句时会失效,这与where的位置有关,是thinkphp3.2.3及以下版本的bug,举例:

如下代码不会生成where条件,

$where['id'] = $ID;
$arr_fields[] = 'name';
$arr_fields[] = 'name';
$t_cadre = M("XXX");
$list = $t_cadre->where($where)->field($arr_fields)->select();

修改如下,将where放到select前,将会生成where条件:


$where['id'] = $ID;
$arr_fields[] = 'name';
$arr_fields[] = 'name';
$t_cadre = M("XXX");
$list = $t_cadre->field($arr_fields)->where($where)->select();

仅作记录使用,避免大家走弯路。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP