[PHP][Laravel]建立專案

小黑-avatar-img
發佈於後端
更新於 發佈於 閱讀時間約 3 分鐘

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'。





avatar-img
8會員
123內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
這邊分三個部分:新增、檢視和寄送郵件給留言者。 新增 底下是HTML的輸入內容的程式碼: <table border="1"> <tr> <td><font size="2">姓名:</font></td> <td><input type="text" size="30"
底下是HTML的上傳檔案程式碼: <form action="upload.php" method="post" enctype="multipart/form-data"> 選擇檔案: <input type="file" name="file"/><hr/> <input typ
購物車(Shopping cart)是採購商品時,很重要的工具。 此篇是使用Cookie建立購物車。 從HTML的下拉式選單選擇商品,並輸入數量,然後加入購物車。而在購物車中,可以刪除商品。 底下是HTML的下拉式選單程式碼: <select name="Item"> <option v
檔案屬性 filetype(string):回傳參數檔案的種類字串,可能的回傳值有:fifo、char、dir、block、link、file和unknown,如果有錯誤回傳false。 fileatime(string):回傳參數檔案的最後存取時間,單位是UNIX的時間戳記,如果錯誤回傳fal
路徑處理 basename(string [.string]):回傳第一個參數路徑字串的檔案名稱,包含副檔案,如果有第二個參數字串,就會在檔案名稱刪除此字串,例如:刪除副檔名".php"。 dirname(string):回傳參數路徑字串中的路徑。 realpath(string):回傳參數路
HTTP通訊協定不會持續保持連線和保留客戶端的使用者狀態,因此需要將使用者狀態傳遞下去,以便保留使用者狀態,稱為「狀態管理」(State Management)。 客戶端: 此部份是將資料存在使用者電腦或HTML網頁或標籤中,以便傳遞。常用方法如下: 表單欄位:使用HTML表單欄位內容傳遞資料
這邊分三個部分:新增、檢視和寄送郵件給留言者。 新增 底下是HTML的輸入內容的程式碼: <table border="1"> <tr> <td><font size="2">姓名:</font></td> <td><input type="text" size="30"
底下是HTML的上傳檔案程式碼: <form action="upload.php" method="post" enctype="multipart/form-data"> 選擇檔案: <input type="file" name="file"/><hr/> <input typ
購物車(Shopping cart)是採購商品時,很重要的工具。 此篇是使用Cookie建立購物車。 從HTML的下拉式選單選擇商品,並輸入數量,然後加入購物車。而在購物車中,可以刪除商品。 底下是HTML的下拉式選單程式碼: <select name="Item"> <option v
檔案屬性 filetype(string):回傳參數檔案的種類字串,可能的回傳值有:fifo、char、dir、block、link、file和unknown,如果有錯誤回傳false。 fileatime(string):回傳參數檔案的最後存取時間,單位是UNIX的時間戳記,如果錯誤回傳fal
路徑處理 basename(string [.string]):回傳第一個參數路徑字串的檔案名稱,包含副檔案,如果有第二個參數字串,就會在檔案名稱刪除此字串,例如:刪除副檔名".php"。 dirname(string):回傳參數路徑字串中的路徑。 realpath(string):回傳參數路
HTTP通訊協定不會持續保持連線和保留客戶端的使用者狀態,因此需要將使用者狀態傳遞下去,以便保留使用者狀態,稱為「狀態管理」(State Management)。 客戶端: 此部份是將資料存在使用者電腦或HTML網頁或標籤中,以便傳遞。常用方法如下: 表單欄位:使用HTML表單欄位內容傳遞資料
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
在這篇文章中,將介紹如何使用 Laravel 與 Vue.js 構建一個具有良好使用體驗的 Web 應用。我們將討論如何組織 Laravel 路由與控制器,並展示如何在前端 Vue.js 中進行頁面切換和資料傳遞。
在 Laravel 框架中,MVC(模型-視圖-控制器)架構是一個常見的設計模式,能有效地幫助我們組織程式碼,將應用的資料邏輯、業務邏輯和視圖展示分開。本文將介紹如何使用 Laravel 的 MVC 架構來創建、讀取、更新和刪除資料(即 CRUD 操作),並將資料顯示到前端頁面上。
在這篇文章中,來學習如何安裝 XAMPP、Composer 和 Laravel,並深入探討如何在 Laravel 專案中使用 PHP 進行開發。這篇將會包括一些基本的 PHP 語法、常見的操作(如迴圈、條件式、陣列處理等)以及如何在 Laravel 中進行一些常見的任務。
Thumbnail
延續上篇: 功能實作篇 框架與結構 接下來我們將深入實作 Laravel 框架中的路由(Router)、控制器(Controller)、業務邏輯(Service)、儲存庫模式(Repository Pattern),以及模型(Model)的細節。這些部分將構成我們縮網址系統的核心功能。
Thumbnail
CodeIgniter 3 和 Laravel 是兩種不同的 PHP 框架,各有其特點和適用場景。CodeIgniter 3 是一個輕量級框架,Laravel 是一個功能強大的現代 PHP 框架,同樣都有Models的它們有什麼樣的差別呢?
Thumbnail
在本章節中,我們探討了 PHP 中如何引用和管理套件。學習了如何使用 Composer 來安裝第三方套件,以及如何引用自定義模組。此外,我們還介紹了如何創建和使用自定義套件,並列舉了一些在 PHP 社群中常見且廣泛使用的套件和庫。通過掌握這些知識,開發者可以更有效地管理和利用各種資源。
Thumbnail
本章節旨在介紹如何在不同操作系統上安裝和配置PHP環境,並使用命令行工具進行基礎操作。此外,還介紹了使用Visual Studio Code進行PHP開發的步驟,包括安裝擴展和設置調試環境。
Thumbnail
Composer是PHP的軟體套件管理系統,它提供用於管理PHP軟體和依賴庫關係的標準格式。通常以專案為單位進行管理,會在專案根目錄底下(預設是vendor)安裝套件,除此外可以安裝全局套件。
Thumbnail
有的時候,會希望在物件導向中對原生的Class新增功能的時候,大多我們都會寫一個新的class並繼承。 但是其實Laravel提供了一個不同的方式,讓我們可以在常用的Class上,直接新增想要的function,那就是macro。
Migration在 Laravel 中是一種用來管理資料庫結構變更的機制。它的主要目的是使開發者能夠在應用程序的不同環境中保持資料庫結構的一致性,並輕鬆地進行結構變更
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
在這篇文章中,將介紹如何使用 Laravel 與 Vue.js 構建一個具有良好使用體驗的 Web 應用。我們將討論如何組織 Laravel 路由與控制器,並展示如何在前端 Vue.js 中進行頁面切換和資料傳遞。
在 Laravel 框架中,MVC(模型-視圖-控制器)架構是一個常見的設計模式,能有效地幫助我們組織程式碼,將應用的資料邏輯、業務邏輯和視圖展示分開。本文將介紹如何使用 Laravel 的 MVC 架構來創建、讀取、更新和刪除資料(即 CRUD 操作),並將資料顯示到前端頁面上。
在這篇文章中,來學習如何安裝 XAMPP、Composer 和 Laravel,並深入探討如何在 Laravel 專案中使用 PHP 進行開發。這篇將會包括一些基本的 PHP 語法、常見的操作(如迴圈、條件式、陣列處理等)以及如何在 Laravel 中進行一些常見的任務。
Thumbnail
延續上篇: 功能實作篇 框架與結構 接下來我們將深入實作 Laravel 框架中的路由(Router)、控制器(Controller)、業務邏輯(Service)、儲存庫模式(Repository Pattern),以及模型(Model)的細節。這些部分將構成我們縮網址系統的核心功能。
Thumbnail
CodeIgniter 3 和 Laravel 是兩種不同的 PHP 框架,各有其特點和適用場景。CodeIgniter 3 是一個輕量級框架,Laravel 是一個功能強大的現代 PHP 框架,同樣都有Models的它們有什麼樣的差別呢?
Thumbnail
在本章節中,我們探討了 PHP 中如何引用和管理套件。學習了如何使用 Composer 來安裝第三方套件,以及如何引用自定義模組。此外,我們還介紹了如何創建和使用自定義套件,並列舉了一些在 PHP 社群中常見且廣泛使用的套件和庫。通過掌握這些知識,開發者可以更有效地管理和利用各種資源。
Thumbnail
本章節旨在介紹如何在不同操作系統上安裝和配置PHP環境,並使用命令行工具進行基礎操作。此外,還介紹了使用Visual Studio Code進行PHP開發的步驟,包括安裝擴展和設置調試環境。
Thumbnail
Composer是PHP的軟體套件管理系統,它提供用於管理PHP軟體和依賴庫關係的標準格式。通常以專案為單位進行管理,會在專案根目錄底下(預設是vendor)安裝套件,除此外可以安裝全局套件。
Thumbnail
有的時候,會希望在物件導向中對原生的Class新增功能的時候,大多我們都會寫一個新的class並繼承。 但是其實Laravel提供了一個不同的方式,讓我們可以在常用的Class上,直接新增想要的function,那就是macro。
Migration在 Laravel 中是一種用來管理資料庫結構變更的機制。它的主要目的是使開發者能夠在應用程序的不同環境中保持資料庫結構的一致性,並輕鬆地進行結構變更