水下功夫做透,水上才能顺风顺水。

yii2 的ActiveRecord

一 、查询

返回数组

$cond[] = "and";//条件数组需要加and,单一个字符串不需要加。
$cond[] = "payTime >= '{$startDate}'";
$cond[] = "payTime <'{$endDate}'";
$field = ['merId','mchntName','orderId'];
$payLog = WebPayRecord::find()->select($field)->where($cond)->asArray()->all();

无条件where可以不要,不筛选字段select可以不要。

返回对象

$payLog =  WebPayRecord::find()->where("merTrxId = '{$merTrxId}'")->one();

 

二、保存、更新

$this->card_record = new BankCardRecord();
$this->card_record['userName']= "dawei";
$this->card_record->save();

$bankCard = BankCardRecord::find()->where($cond)->one();
if(!empty($bankCard)){
  $bankCard['updateTime'] = date('Y-m-d H:i:s');
  $bankCard->update();
}

 insert()是添加 | update()是更新 | save()如果传了主键就更新,不传则添加,更新现有记录。

 

三、获取当前执行的查询sql

$sql = EAccount::find()->where(['user_id'=>$userId])->createCommand()->getRawSql();

 

posted @ 2017-11-07 15:13  北方寒士  阅读(196)  评论(0编辑  收藏  举报