Php 如何在$model中添加条件->;使用YII保存() foreach($cons_name作为$name){ $model=新应用程序(); $model->const=$name; $model->value=$value[$i]; $model->save(); }

Php 如何在$model中添加条件->;使用YII保存() foreach($cons_name作为$name){ $model=新应用程序(); $model->const=$name; $model->value=$value[$i]; $model->save(); },php,yii,Php,Yii,我正在使用这段代码,如何在这个场景中添加一些“where”条件。我是yii的新手,请告诉我如何解决这个问题。我正在尝试用give代码保存多个记录,它对我有效,但我想向它添加更多的条件。 还要告诉我如何一次添加多行,而不是使用循环$model=newapps()将为您的模型创建一个新对象。如果要编辑现有行,应使用find方法获取相应的行 <pre> foreach($cons_name as $name){ $model = new Apps(); $model->const =

我正在使用这段代码,如何在这个场景中添加一些“where”条件。我是yii的新手,请告诉我如何解决这个问题。我正在尝试用give代码保存多个记录,它对我有效,但我想向它添加更多的条件。 还要告诉我如何一次添加多行,而不是使用循环

$model=newapps()将为您的模型创建一个新对象。如果要编辑现有行,应使用
find
方法获取相应的行

<pre>
foreach($cons_name as $name){
$model = new Apps();
$model->const = $name;
$model->value =$value[$i];
$model->save();
}
</pre>
据我所知,如果不在PHP中使用任何循环,就无法插入多行。您可以做的是构建一个包含多行(以逗号分隔)的插入查询并执行一次


因为将数组与活动记录对象一起使用,所以需要对其进行访问,并为每个对象设置必要的数据,然后保存。
您可以使用方法
ActiveRecord.updateAll()

您不能为INSERT使用WHERE条件(这就是您在这里所做的),因为它是一个新行,没有任何内容可供搜索。请参见下面的答案。但我问题的第一部分是我想更新并添加一些WHERE编码我应该使用$model->save();用上面的线?
$model = Apps::model()->find('id=1 and type = 2');
INSERT INTO table1 (id,name) VALUES (1,'NAME1'),(2,'NAME2'),(3,'NAME3')