用品

什麼是 Laravel,它是如何工作的以及創建 WEB 應用程序的基本架構

Laravel 是一個基於 PHP 的 Web 框架,用於構建高端 Web 應用程序,使用其簡單而強大的語法。

Laravel PHP 框架帶有一組可靠的工具,並為生成的應用程序提供架構。 它是一個開源的PHP框架,採用MVC架構:

  • 框架:是程序員使用的方法、類或文件的集合,也可以使用自己的代碼擴展它們的功能。
  • 架構: 是框架遵循的具體設計模式。 Laravel 遵循 MVC 架構。

MVC

由三個字母組成的縮寫,含義如下:

  • M: 模板。 模型是處理數據庫的類。 例如,如果我們在應用程序中有用戶,那麼我們將有一個負責查詢用戶表的用戶模型,如果我們有一個用戶模型,那麼我們也會有一個用戶表。
  • V: 看法。 視圖是一個類,負責處理我們在瀏覽器中可以看到的有關應用程序的所有內容。
  • C:控制器。 控制器是同時處理模型和視圖的中介。 控制器是從模型中獲取數據並將其發送到視圖類的類。

優點和特點

創建授權和認證系統

每個 Web 應用程序所有者都必須確保未經授權的用戶不會訪問受保護的資源。 Laravel 提供了一種簡單的方法來實現身份驗證。 它還提供了一種簡單的方法來組織授權邏輯和控制對資源的訪問。

與工具集成

Laravel 集成了許多工具來創建更快的應用程序。 不僅需要創建應用程序,還需要創建更快的應用程序。 與緩存後端集成是提高 Web 應用程序性能的主要步驟之一。Laravel 集成了一些流行的緩存後端,如 Redis 和 Memcached。

郵件服務整合

Laravel 集成了郵件服務。 此服務用於發送通知電子郵件。 它提供了一個乾淨簡單的 API,允許您通過本地或基於雲的服務快速發送電子郵件。

測試自動化

測試產品對於確保軟件在沒有錯誤、錯誤和崩潰的情況下運行非常重要——無論何時發布新版本。 我們知道自動化測試比手動測試花費的時間更少,特別是對於非回歸測試。 Laravel 在開發時也考慮到了測試。

業務邏輯代碼與表示代碼分離

業務邏輯代碼和表示代碼的分離允許 HTML 佈局設計人員無需與開發人員交互即可更改外觀。 如果提供業務邏輯代碼(控制器)和表示代碼(視圖)之間的分離,開發人員可以更快地修復錯誤。 我們知道 Laravel 遵循 MVC 架構,所以分離是關鍵。

修復最常見的技術漏洞

Laravel 是一個安全框架,因為它可以保護 Web 應用程序免受所有安全漏洞的影響。 漏洞是 Web 應用程序開發中最重要的方面之一。 美國組織 OWASP 基金會, defi修復了SQL注入、請求偽造、腳本編寫等重大安全漏洞。

CRON:配置和管理活動的計劃

WEB應用總是需要任務調度機制來按時調度和執行任務。 例如,何時向訂閱者發送電子郵件或何時在一天結束時清理數據庫表。 為了調度任務,開發人員需要為每個任務創建 Cron 條目,以及 Laravel 命令調度程序 defi結束指揮計劃。

Laravel 項目創建

要創建你的第一個 Laravel 項目,你需要擁有 Composer 安裝。 如果它不在您的機器上,請按照我們關於 作曲家.

之後在您的系統中為您的新 Laravel 項目創建一個新目錄。 接下來,導航到創建新目錄的路徑,然後運行創建項目命令 composer create-project通過鍵入以下命令:

composer create-project laravel/laravel myex-app

此命令(版本 9.x)創建名為 myex-app

或者您可以創建新項目 Laravel 全局安裝安裝程序 Laravel 手段 Composer:

創新通訊
不要錯過有關創新的最重要新聞。 註冊以通過電子郵件接收它們。
composer global require laravel/installer
laravel new myex-app

創建項目後,使用命令啟動本地Laravel開發服務器 serve 作者:Artisan CLI 的 Laravel:

php artisan serve

啟動開發服務器後 Artisan,您的應用程序將可以在您的 Web 瀏覽器中訪問 http://localhost:8000. 現在,您可以使用 Laravel. 當然,你可能還想建立一個數據庫。

Laravel 中的應用程序結構

Laravel 結構基本上是項目中包含的文件夾、子文件夾和文件的結構。 在 Laravel 中創建項目後,我們可以看到應用程序的結構,如 Laravel 根文件夾圖像所示:

配置

config 文件夾包含 Laravel 應用程序正常運行所需的配置和相關參數。 配置文件夾中包含的不同文件如下圖所示。 文件名代表配置範圍。

數據庫

該目錄包括用於數據庫功能的各種參數。 它包括三個子目錄:

  • 種子:包含用於單元測試數據庫的類;
  • Migrations:此文件夾用於生成數據庫結構並將其與應用程序對齊;
  • Factories:此文件夾用於生成大量數據記錄。
評價

它是幫助初始化 Laravel 應用程序的根文件夾,即應用程序的開始。 包括以下文件和文件夾:

  • .htaccess:提供服務器配置的文件;
  • javascript和css:包含了Laravel應用的所有資源文件;
  • index.php:初始化網絡應用程序所需的文件。
資源

Resources 目錄包含增強 Web 應用程序的文件。 此目錄中包含的子文件夾及其用途:

  • assets:文件夾包含LESS、SCSS等web應用風格所必需的文件;
  • lang:包括本地化或內部化的配置;
  • 視圖:是與最終用戶交互並在 MVC 架構中起主要作用的 HTML 文件或模板。
儲存應用

這是存放 Laravel 項目運行時所需的所有日誌和文件的文件夾。 以下是此目錄中包含的子文件夾及其用途 -

  • app:此文件夾包含連續調用的文件;
  • framework:包含經常調用的session、緩存和視圖;
  • 日誌:包含跟踪運行時問題的文件,尤其是所有異常和錯誤日誌。
測試s

所有單元測試用例都包含在這個目錄中。 測試用例類的命名是 camel_case,並遵循基於類功能的命名約定。

供應商

Laravel 基於託管依賴 作曲家,例如安裝 Laravel 設置或包含 XNUMXrd 方庫等。

Vendor 文件夾包含的所有依賴項 作曲家.

Ercole Palmeri

創新通訊
不要錯過有關創新的最重要新聞。 註冊以通過電子郵件接收它們。

最近的文章

出版商與 OpenAI 簽署協議以規範人工智慧處理的資訊流

上週一,英國《金融時報》宣布與 OpenAI 達成協議。英國《金融時報》授予其世界級新聞報道許可…

30月2024

線上支付:串流服務如何讓您永遠付款

數百萬人為串流媒體服務付費,每月支付訂閱費用。人們普遍認為您...

29月2024

Veeam 為勒索軟體提供最全面的支持,從保護到回應和恢復

Veeam 的 Coveware 將繼續提供網路勒索事件回應服務。 Coveware 將提供取證和修復功能…

23月2024

綠色與數位革命:預測性維護如何改變石油和天然氣產業

預測性維護正在透過創新和主動的工廠管理方法徹底改變石油和天然氣行業。

22月2024