代码如下:
$map[\'name\'] = array(\'neq\',array(张三\', \'李四\', \'王五\', \'赵六\'), \'AND\');
$data = M(\'User\')->where($map)->select();
运行的结果出错了:
SQLSTATE[42S22]: Column not found: 1054 Unknown column \'Array\' in \'where clause\'
错误位置
FILE: E:\\websiteVer3\\new_zxiw\\ThinkPHP\\Library\\Think\\Db\\Driver.class.php LINE: 169
修改Driver文件dump出来原生查询语句,查询条件变成了:
name <> Array
请教一下这个是什么问题呢?
这里作者的意图应该是不等于数组内的名称,这时不能使用neq,thinkphp有 in和notin
正确的写法是$map[\'name\'] = array(\'in\',array(张三\', \'李四\', \'王五\', \'赵六\'));