2015-10-19 145 views
2

我想知道yii2中是否有函數我想像save()那樣,將執行以下操作:check如果給定的記錄存在於具有這些屬性的數據庫中,如果是的話,它會返回id,如果沒有,它會創建它並返回id。我認爲這將很酷。可能有這樣的事情。你能幫我找我嗎?謝謝!yii2保存,檢查是否存在,如果是給id返回,如果沒有,創建(並給id返回)

+0

取決於您的獨特列。發佈您的數據庫字段和哪些字段除主鍵以外是唯一的。 –

回答

3

我不認爲有特定功能,但除了保存,也可以使用exists

$exists = ModelName::find()->where([ 'id' => 1 ])->exists(); 

if($exists) { 
    //it exists 

} else { 
    //doesn't exist so create record 

} 
+1

謝謝!不錯,乾淨! – Imtiaz

1

方法save() from BaseActiveRecord類具有相似的功能 但它返回一個布爾值,無論保存是否成功。 你可以得到主鍵值保存後()調用

$model->getPrimaryKey();

相關問題