你將不得不做一堆東西來實現這一點。你可能無法轉換你的代碼,因爲laravel會使用雄辯來做所有的數據庫通訊。路由也是一種完全不同於普通的php的概念。
我仍然強烈建議使用laravel,因爲您的安全問題較少。
下面列出了您需要查看的主題和步驟,以實現您所描述的內容。
- 假設你有一個新的laravel設置與最新版本,你將不得不看看你可能不需要一個API的網絡中間件。它可以在RouteServiceProvider中找到,它在route.php文件中的每個路由上都被定義爲使用它。如果你有一個老版本的Laravel 5.2,它可能被定義爲routes.php本身的組。刪除網絡中間件,如果需要可添加API中間件
- 在您的routes.php文件中創建路由以定義使用哪個「url」來響應請求
- 創建控制器以處理這些傳入請求。如果你沒有很多代碼,你可以直接在routes.php中作爲匿名函數來處理它們。
- 模型基本上就是你的表格。您應該爲每個表定義一個模型。用戶模型默認已經定義。看看它的代碼。您還將定義模型之間的關係。這將使鏈接模型上的CURD操作員非常容易。
- 遷移是您的表的定義。它由「遷移運行時應該做什麼」(up函數)和「回滾時應該做什麼」(down函數)組成
- 如果您返回laravel中的類/數組,它將自動被解析到json
看着你的例子,我假設你將有一個用戶模型和餐廳模型,例如,如果你有一個投票系統,其中用戶投票/評價餐廳,你會有多對多的關係在用戶和餐館之間。
如果一家餐館屬於用戶,它將會是oneToMany,因爲用戶可以有多家餐館。
定義關係看起來是這樣的(user.php的模型)
public function restaurants() {
return $this->hasMany('App\Restaurants');
}
的Restaurant.php是這樣
public function user() {
return $this->belongsTo('App\User');
}
採用這種設置確保您的餐廳表中有一個 「user_ID的」 洋關鍵字段發送到用戶表。
查詢用戶的所有餐館現在這個樣子
return $user->restaurants;
但這些都只是一些高水平的例子應該向你解釋如何laravel作品,爲什麼你可以從中受益。它減少了您的樣板代碼,併爲您提供了一整套功能,幫助程序和概念,幫助您輕鬆地增強應用程序 - 一旦設置完成。
你可以看看到文檔的更多細節https://laravel.com/docs/5.2 而在http://laracasts.com
的laravel是框架找到真棒教程,所以有一個不同的甲酸鹽。所以首先你需要了解laravel的結構和語法。 –
Laravel不像「一堆文件」PHP應用程序那樣工作。一切都通過[路由器層](https://laravel.com/docs/5.2/routing),將內容導向到[controllers](https://laravel.com/docs/5.2/controllers) MVC風格的框架。如果您正在構建API,則可能不需要通過用戶名/密碼進行授權,但如果有任何受保護的東西,您通常需要註冊並生成密鑰才能創建API密鑰。 – tadman
你應該看看如何用laravel創建api的基本示例,但簡化所有你需要做的就是定義app/http/routes.php中的路由,它應該被訪問,並且提供一個控制器或者一個函數直。你將需要照顧網絡中間件,因爲你可能不希望這個API。 –