更新於 2024/12/05閱讀時間約 3 分鐘

[PHP][Laravel]建立專案

Laravel是一個以MVC(參考:[設計模式]MVC)為架構的PHP Web框架。Laravel支援使用者身份驗證和授權,提供模組化套件系統。Laravel使用Blade模板系統將PHP程式碼與HTML網頁分離。

安裝環境

下載安裝composer

https://getcomposer.org/download/

測試composer

composer -v

安裝Laravel installer

composer global require "laravel/installer"


建立專案

新增專案

laravel new "專案名稱"

啟動伺服器

php artisan serv

顯示專案首頁

在瀏覽器裡,輸入“http://localhost:8000”


目錄結構

  • app:應用程式和新的PHP程式檔,在「Http/Controllers」子目錄是Controller控制器的類別檔;「Models」子目錄是應用程式模型的Model類別檔。
  • bootstrap:應用程式啟動的腳本檔和快取檔。
  • config:應用程式設定檔。
  • database:資料庫檔案。
  • public:公開的資源檔和index.php等。
  • resources:前端的JavaScript和CSS等資源檔,在「views」子目錄是View的Blade模板檔案。
  • routes:路由設定檔。
  • storages:應用程式的暫存檔、Session檔、Views編譯的腳本檔和記錄檔。
  • tests:應用程式的測試和單元測試檔。
  • vendor:使用Composer安裝的其他第三方PHP函式庫。


路由

每個瀏覽器送出的HTTP請求會對應一個路由,每個路由會對應Controller類別裡的一個方法。

自定義路由

Route::get('/', function(){
return view('welcome');
});

get()為HTTP的GET請求;第一個參數「/」為根路由。第二個參數function()裡的view()為模板檔名稱,是在「resources/views」下的welcome.blade.php。

Route::get('/hello', 'HelloController@hello')->name('hello');

第二個參數執行HelloController.php的hello(),最後name()指定名稱,方便之後進行轉址。


注意:Laravel 8 沒有在RouteServiceProvider.php指定控制器的命名空間,所以會找不到Controller。請進入「\app\Providers」下的RouteServiceProvider.php後,開啟並找到boot(),然後在boot()最後的Route::middleware('web')裡,將$this->namespace改成'App\Http\Controllers'。





分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.