Бортовой журнал Ктулху

Примеры Active Record на Yii2

Примеры для выборки, обновления, записи и удаления данных в БД при помощи Active Record на Yii2.

 

// выбрать запись по id
/**
* @param $id
* @return array|null|ActiveRecord
*/
public static function getRow($id)
{
return self::find()->where(['id' => $id])->one();
}
 
// удаление строк. ID строк передаются массивом
/**
* @param $attrs
* @return array
*/
public static function delRow($params)
{
$_to_del = [];
foreach ($params as $key => $param){
$_to_del[] = $key;
}
if(self::deleteAll(['value' => $_to_del])) return true;
else return false;
}
 
// Обновление строки по ID
/**
* @param $id
* @return bool|int
*/
private static function updateRow($id)
{
$attribute = self::findOne(['id' => $id]);
$attribute->Value = 'value';
return $attribute->update(false);
}
 
// Добавление новой записи. Возвращаем ее ID
/**
* @return array
*/
private function newRow()
{
$model = new Model();
$model->Value = 'value';
$model->save(false);
return $model->id;
}