在 yii2 框架中将表单中的多个值用于 where 条件 php
Use multiple values from a form into where condition in yii2 framework php
我正在尝试在 yii2 中使用 where() 查询获取值,我想使用多个 where 条件从中获取值,我已经尝试了几种选择 none 似乎可行。
$values 的数量和内容在变化
$test = Material::find()->where(['Material.MaterialId' => $value])->joinWith(['objectName'])->all();
这个适用于单值。但是如果我做一个 foreach 循环来获取所有的变化值。所以我得到一个像
这样的字符串
$values = "'ID1','ID2','ID3','IDn',";
$test = Material::find()->where('in', 'Material.MaterialId' , [$values])->joinWith(['objectName'])->all();
它Returns Nothing But If I use is like that
$test = Material::find()->where('in', 'Material.MaterialId' , [ID1','ID2','ID3','IDn',])->joinWith(['objectName'])->all();
这让我得到了所需的结果。我也试过同样的using or in where子句和orWhere方法,我想都是同样的问题。
试试这个方法
$value = [' ID1','ID2','ID3','IDn'];
$test = Material::find()->where(['Material.MaterialId' => $value])->
joinWith(['objectName'])->all();
我正在尝试在 yii2 中使用 where() 查询获取值,我想使用多个 where 条件从中获取值,我已经尝试了几种选择 none 似乎可行。
$values 的数量和内容在变化
$test = Material::find()->where(['Material.MaterialId' => $value])->joinWith(['objectName'])->all();
这个适用于单值。但是如果我做一个 foreach 循环来获取所有的变化值。所以我得到一个像
这样的字符串$values = "'ID1','ID2','ID3','IDn',";
$test = Material::find()->where('in', 'Material.MaterialId' , [$values])->joinWith(['objectName'])->all();
它Returns Nothing But If I use is like that
$test = Material::find()->where('in', 'Material.MaterialId' , [ID1','ID2','ID3','IDn',])->joinWith(['objectName'])->all();
这让我得到了所需的结果。我也试过同样的using or in where子句和orWhere方法,我想都是同样的问题。
试试这个方法
$value = [' ID1','ID2','ID3','IDn'];
$test = Material::find()->where(['Material.MaterialId' => $value])->
joinWith(['objectName'])->all();