Yii2.0實(shí)現(xiàn)的批量更新及批量插入功能示例
本文實(shí)例講述了Yii2.0實(shí)現(xiàn)的批量更新及批量插入功能。分享給大家供大家參考,具體如下:
批量更新
方法1
/** * 批量更新循環(huán)周期 * @param array $condition * $condition = ['advertise_id' => '','status' => '', 'weekdays'=>[1,2,3]] 查詢條件 * $params = ['status' => ''] * @param $params * @return bool */ public function batchUpdateAdSchedule($condition = [], $params) { if (count($condition) == 0 || !is_array($condition) || count($params) == 0) { return false; } $conditions = ' 1 = 1 '; $bind = []; if (array_key_exists('advertise_id', $condition) && !empty($condition['advertise_id'])) { $conditions .= ' AND `advertise_id` = :advertiseId'; $bind['advertiseId'] = $condition['advertise_id']; } if (array_key_exists('status', $condition) && !empty($condition['status'])) { $conditions .= ' AND `status` = :status'; $bind['status'] = $condition['status']; } $result = AdvertiseSchedule::updateAll($params, $conditions, $bind); return $result > 0 ? true : false; }
方法2
/** * 批量更新商品銷量 * @param $params * @return bool|int * @throws \yii\db\Exception */ public function batchUpdateSalesNum($params) { if (count($params) == 0 || !is_array($params)) { return false; } $sql = ''; foreach ($params as $key => $value) { $sql .= 'UPDATE `morefun`.`mbb_goods` SET `sale_num` = `sale_num` -' . $value['amount'] . ' WHERE `id` =' . $value['goods_id'] . ';'; } $result = Yii::$app->db->createCommand($sql)->execute(); return $result == 1 ? true : false; }
批量插入
/** * 批量插入 * @param $params * @return int * @throws \yii\db\Exception */ public function batchAddShopClassConn($params) { $connection = Yii::$app->db; $queryBuilder = $connection->queryBuilder; /*$sql = $queryBuilder->batchInsert('user', ['name', 'age'], [ ['Tom', 30], ['Jane', 20], ['Linda', 25], ]);*/ $sql = $queryBuilder->batchInsert(shopClassConn::tableName(), ['shop_id', 'class_id'], $params); return $connection->createCommand($sql)->execute(); }
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門(mén)及常用技巧總結(jié)》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《smarty模板入門(mén)基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。
- Yii2 批量插入、更新數(shù)據(jù)實(shí)例
- YII框架批量插入數(shù)據(jù)的方法
- Yii框架批量插入數(shù)據(jù)擴(kuò)展類的簡(jiǎn)單實(shí)現(xiàn)方法
- Yii2如何批量添加數(shù)據(jù)
- 淺析Yii2 gridview實(shí)現(xiàn)批量刪除教程
- yii2使用GridView實(shí)現(xiàn)數(shù)據(jù)全選及批量刪除按鈕示例
- Yii實(shí)現(xiàn)復(fù)選框批量操作實(shí)例代碼
- JavaScript中全選、全不選、反選、無(wú)刷新刪除、批量刪除、即點(diǎn)即改入庫(kù)(在yii框架中操作)的代碼分享
- Yii中CGridView實(shí)現(xiàn)批量刪除的方法
相關(guān)文章
Laravel 5框架學(xué)習(xí)之模型、控制器、視圖基礎(chǔ)流程
本文給大家介紹的是Laravel5框架中模型、控制器、視圖的基礎(chǔ)流程,其實(shí)MVC體系結(jié)構(gòu)模式將一個(gè)交互式系統(tǒng)分為三個(gè)組件。模型包含核心功能和數(shù)據(jù)。視圖向用戶顯示信息。控制器處理用戶輸入。視圖和控制器共同構(gòu)成了用戶接口。2015-04-04一個(gè)簡(jiǎn)單安全的PHP驗(yàn)證碼類、PHP驗(yàn)證碼
這篇文章主要介紹了一個(gè)簡(jiǎn)單安全的PHP驗(yàn)證碼類 PHP驗(yàn)證碼的相關(guān)資料,需要的朋友可以參考下2016-09-09PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法
這篇文章主要給大家介紹了PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-06-06解決php 處理 form 表單提交多個(gè) name 屬性值相同的 input 標(biāo)簽問(wèn)題
這篇文章主要介紹了php 處理 form 表單提交多個(gè) name 屬性值相同的 input 標(biāo)簽問(wèn)題的解決方法,需要的朋友參考下吧2017-05-05PHP面向?qū)ο缶幊讨钊肜斫夥椒ㄖ剌d與方法覆蓋(多態(tài))
這篇文章主要介紹了PHP面向?qū)ο缶幊讨钊肜斫夥椒ㄖ剌d與方法覆蓋(多態(tài))的相關(guān)資料,需要的朋友可以參考下2015-12-12