YII2 获取 id 不等于数组元素的表行

Posted

技术标签:

【中文标题】YII2 获取 id 不等于数组元素的表行【英文标题】:YII2 get table rows where id is not equal to array elements 【发布时间】:2015-08-06 07:39:35 【问题描述】:

我有一个元素数组,格式为:

Array ( [0] => 16 [1] => 14 [2] => 1 [3] => 13 )

现在我只需要提取 ID 不是数组中的值之一的行。现在我正在使用以下代码:

$items = ArrayHelper::map(User::find()->where(['<>', 'id', $array])->all(), 'id', 'name');

不幸的是,这会将数据库中的 id 与数组的第一个元素进行比较。

建议?

【问题讨论】:

【参考方案1】:

尝试使用not in 而不是&lt;&gt;

【讨论】:

好的,谢谢!早些时候也尝试过,但不知何故它拒绝工作。【参考方案2】:

您可以尝试以下代码示例,

$arr = [16,14,1,13];
$items = ArrayHelper::map(User::find()->where(['id'=>$arr])->all(), 'id', 'name');

它对我有用。

【讨论】:

以上是关于YII2 获取 id 不等于数组元素的表行的主要内容,如果未能解决你的问题,请参考以下文章

从动态添加的表行中获取数据

如何在jQuery中获取对具有特定值的表行的引用

制作不相同的表行(表内表内表)

如何使用 Javascript/jquery 将字符串中的数组显示为表行

if语句中的奇怪行为

如何从选定的表行中获取最小和最大数量?