在開發(fā)中遇到過這樣問題,,foreach循環(huán)插入數(shù)據(jù)時(shí),,表中只插入了循環(huán)的最后一條數(shù)據(jù),而其它數(shù)據(jù)沒有真實(shí)添加,,追蹤發(fā)現(xiàn),,內(nèi)存地址中循環(huán)時(shí)新一條數(shù)據(jù)會(huì)覆蓋前一條數(shù)據(jù),解決辦法是另起一個(gè)對(duì)象,;
如下:
第一種方法
$model = new User();
foreach($data as $attributes)
{
$_model = clone $model; //克隆對(duì)象
$_model->setAttributes($attributes);
$_model->save();
}
第二種方法
$model = new User();
foreach($data as $attributes)
{
$model->isNewRecord = true;
$model->setAttributes($attributes);
$model->save() && $model->id=0;
}
|