Laravel 路由對資料庫操作


Laravel 路由對資料庫操作

藉由路由夾帶參數輸入再透過邏輯轉呼叫資料庫
回應結果內容 , 有沒有發現,這好像就是api

是的,本來要拿 Laravel做api ,但因一些緣故最後又放棄使用
退回到傳統的 php架構上


查詢(1) : 一般SQL寫法 app/route.php
Route::get('api/test/openlist/get/{limit?}' , function($limit = 50)
{ $result = DB::select("SELECT * FROM OpenList where id = ?" , array(1) ); return Response::json($result) ; });

Route::get('api/test/openlist/get/{limit?}' , function($limit = 50)
{ $result = DB::select("SELECT * FROM OpenList where id = ? AND serverid = ?", array(1,54671) ); //欲查詢變數順序,依array內容順序
return Response::json($result) ; });



查詢(2) : 物件寫法 app/route.php
DB::table(“OpenList”)->get();//查詢所有 DB::table("OpenList")->take(5)->get(); // 只查5筆 DB::table('users')->where('name', ‘uccu’)->get(); // 查name欄位值為uccu的資料 DB::table('roles')->lists('title', 'name'); //查roles裡的title,name欄位 $users = DB::table('users') ->where('votes', '>', 100) ->orWhere('name', 'John') ->get();
插入(1):一般sql寫法 add/route.php
Route::get('api/sqlcmd/insert/' , function() { DB::insert('insert into users (id, name) values (?, ?)', array(1, 'Dayle')) });
插入(2): 物件寫法 app/route.php
Route::get('api/sqlcmd/insert/' , function($limit = 50) { DB::table("users")->insert( array('name' => 'hahaha' , 'email'=> 'hahaha@gmail.com') ); //一次插入一筆資料 DB::table('users')->insert(array( array('email' => 'taylor@example.com', 'votes' => 0), array('email' => 'dayle@example.com', 'votes' => 0), )); //一次插入多筆資料 });

更新(1):一般sql寫法 add/route.php
Route::get('api/sqlcmd/update/' , function($limit = 50) { DB::update('update users set votes = 100 where name = ?', array('John')); });
更新(2):一般sql寫法 add/route.php
Route::get('api/sqlcmd/update/' , function($limit = 50) { DB::table('users')->where('name', ‘hahaha’)-> update(array('name' => ‘uccuu’, 'email' => 'uccuu@gmail.com')); });

刪除(1):一般sql寫法 add/route.php
Route::get('api/sqlcmd/delete/' , function() { DB::delete('delete from users'); });
刪除(2): 物件寫法add/route.php
Route::get('api/sqlcmd/delete/' , function($limit = 50) { DB::table('users')->where('votes', '<', 100)->delete(); DB::table('users')->delete(); DB::table('users')->truncate(); });

沒有留言:

張貼留言