Laravel批量寫入數據詳解

這周開始瞭解Laravel框架,在學習的過程中發現了Laravel在向數據表中寫入數據是如此的方便高效,是以前在其它框架裏面沒有遇到過的,所以在這裏列出來供初學者參考。

首先Laravel實現這個功能是通過它的seed類來實現的。seed類是放在database/seeds目錄中。
第一步,打開windows的cmd客戶端,然後切換到Laravel的安裝目錄,然後cd到htdocs下面(因爲我們要用到的artisan是在htdocs目錄下),執行命令php artisan make:seeeder UserSeeder(這裏的名字是自定義的),然後可以看到項目目錄中多出了兩個文件,UserSeeder.php 和 DatabaseSeeder.php
這裏寫圖片描述

UserSeeder.php 文件裏面寫入執行批量插入的代碼,比如我想向user表裏面批量插入1000條數據,那麼我可以這樣寫:

use Illuminate\Database\Seeder;

class UserSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
arr=[];for( i=0;i<1000; i++){
tmp=[]; tmp['username'] = 'seagull'.(i+1); tmp[‘password’] = Hash::make(‘ispek’);
tmp[name]=; tmp[‘created_at’] = date(“Y-m-d H:i:s”);
tmp[‘updated_at’] = date(“Y-m-d H:i:s”);  
    }  
    DB::table(‘admin_users’) -> insert(
arr);
}
}
做完這一步之後在DatabaseSeeder.php 裏面調用即可:
在run()方法裏面這樣寫:
Model::unguard();
$this->call(UserSeeder::class);
Model::reguard();
到這裏所有的代碼部分都已經寫完了,之後就是批量執行。
依然是之前的cmd窗口。在裏面輸入php artisan db::seed 命令執行即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章