首頁  >  文章  >  php框架  >  50道面試官必問的Laravel面試題【附答案】

50道面試官必問的Laravel面試題【附答案】

藏色散人
藏色散人轉載
2021-04-06 14:17:228345瀏覽

以下由laravel教學專欄為大家總結面試官必問的50道 Laravel 面試題和答案 ,希望對需要的朋友有所幫助!

1) 什麼是 Laravel ?

Laravel 是一個開源的、廣泛使用的 PHP 框架。該平台主要用於利用 MVC 架構模式開發 web 應用程式。 Laravel 是在 MIT 許可下發布的。

因此,其原始碼託管在 GitHub 上。它遵循可靠且準確的語言規則,因此是可靠的 PHP 框架。

2) 定義 Composer.

它是 PHP 的應用程式層級程式套件管理器。它提供了用於管理 PHP 軟體依賴項和函式庫的標準格式。

3) 什麼是 HTTP 中介軟體?

HTTP 中間件是一種用於過濾 HTTP 請求的技術。 Laravel 包含一個中間件,用於檢查應用程式使用者是否已通過身份驗證。

4) 聚合查詢產生器的方法名稱

查詢建構器的聚合方法是:1) max ()、2) min ()、3) sum ()、4) avg () 和5) count ()。

5) 什麼是 Route ?

路由基本上是由 URI (統一資源識別碼) 指定的端點。它在 Laravel 應用程式中充當指針。

最常見的是,路由指向控制器上的方法,還指出哪些 HTTP 方法可以存取該 URI。

6) 為什麼使用 Route?

路由儲存在專案根目錄下 /routes 資料夾下的檔案內。預設情況下,有幾個不同的檔案對應於應用程式的不同 “面”(“面” 來自六角形體系結構方法)。

7) 什麼是定義路由?

定義路由是一種產生路由路徑的方法。這些路由的連結可以透過在定義路由方法中進行說明

8) 解釋通用 Laravel 應用程式中使用的重要目錄。

常見的 Laravel 應用程式中使用的目錄是:

  • App/: 這是我們的應用程式程式碼所在的原始資料夾。所有控制器,策略和模型都在此資料夾中。
  • Config/: 儲存應用程式的設定檔。這些通常不會直接修改,而是取決於在應用程式根目錄下的 .env (環境) 檔案中設定的值。
  • Database/: 存放資料庫文件,包括 遷移,資料填充,和測試工廠。
  • Public/: 可公開存取的資料夾,其中包含已編譯資源,當然還有 index.php 檔案。

9) 什麼是Controller?

控制器是Laravel 所基於的「MVC」(模型- 視圖- 控制器) 體系結構中的“ C」。

10) 解釋 Laravel 中的反向路由。

反向路由是一種基於符號或名稱產生 URL 的方法。它使您的 Laravel 應用程式變得靈活。

11) 說明 CodeIgniter 和 Laravel 之間的差異。

Parameter #CodeIgniter Laravel
支援ORM 不支援物件關係映射. 支援ORM.
提供身份驗證 確實提供了用戶身份驗證. 具有內建的用戶身份驗證.
程式設計範例 面向元件. 物件導向.
對其他資料庫的支援 支援Microsoft SQL Server, ORACLE, MYSQL, IBM DB2, PostgreSQL, JDBC 和orientDB 相容. 它支援PostgreSQL,MySQL,MongoDB 和Microsoft BI,但CodeIgniter 也支援其他資料庫,例如Microsoft SQL Server,DB2,Oracle 等。
HTTPS 支援 CodeIgniter 部分支援 HTTPS。因此,程式設計師可以使用 URL 透過建立 PATS 來保護資料傳輸過程。 Laravel 支援自訂 HTTPS 路由。程式設計師可以為他們定義的 HTTPS 路由建立特定的 URL。

12) 解釋 Laravel 中 traits 的特徵。

Laravel traits 是包含在另一個類別中的一組函數。一個 trait 就像一個抽象類別。您不能直接實例化它,但是可以在其他的類別中使用它的方法。

13) 解釋 Laravel 中契約的概念。

它們是 Laravel 框架的介面集合。這些契約提供核心服務。 Laravel 中的契約包括相應的框架實現。

14) 如何註冊您的服務提供者?

您可以在 config/pp.php 設定檔中註冊服務提供者,該設定檔包含一個數組,您可以在其中設定服務提供者的類別名稱。

15) 如何定義 Laravel 的門面?

所有的門面都定義在 Illuminate\Support\Facades 命名空間當中。

16) 說明 get 與 post 之間的差異

Get 方法允許在請求頭部 (header) 中發送有限數量的資料。 Post 允許在正文中發送大量資料。

17) 列出Laravel 5.6 中的軟體包

Laravel 5.6 中的預設軟體包為:

1) Envoy、2) Passport , 3) Socialite、 4) Cashier、 5) Horizo​​​​n、 6) Scout.

18) Laravel 中的服務容器是什麼

#服務容器是用於在Laravel 中執行依賴注入的工具。

19) 如何在 Laravel 開啟查詢日誌?

你可以使用 enableQueryLog 方法在 Laravel 中啟用查詢日誌。

20) 解釋 Laravel 中事件的概念。

事件是一種動作或操作,可以幫助您訂閱和偵聽 Laravel 應用程式中發生的事件。當發生任何活動時,Laravel 會自動出發某些事件。

21) 說一下依賴注入和依賴注入的類型.

#它是『其中一種物件依賴於另一個物件』的技術。

依賴注入有三種:

  • 1) 建構子注入
  • 2) setter 注入
  • 3) 介面注入.

22) 使用laravel 有什麼優勢嗎?

以下是laravel 的主要優點:

  • Laravel 具有blade 範本引擎,可建立動態佈局並增加編譯任務.
  • 可以很簡單的重複使用程式碼.
  • 您不需要手動維護和包含路徑,因為Laravel 具有自動載入功能.
  • 該框架可協助您使用LOC 容器製作新工具.
  • Laravel 提供了一個版本控制系統,可協助簡化遷移管理.

23) 說明Laravel 中驗證的概念.

在設計任何Laravel 應用程式時,驗證是一個重要的概念。它可以確保在將資料儲存到資料庫之前,資料始終採用預期的格式。 Laravel 提供了多種驗證資料的方法。

基礎控制器特徵是使用 ValidatesRequests 類,該類別提供了一種有用的方法來驗證來自客戶端電腦的請求。

24) ORM 代表什麼?

ORM 代表物件關聯映射

25) 如何減少 Laravel 中的記憶體使用?

在處理大量資料時,可以使用 cursor 方法以減少記憶體使用量

26) 列出 Laravel Eloquent 中可用的關聯類型。

Laravel Eloquent 中可用的關聯類型有:

  • #1) 一對一
  • 2) 一對多
  • 3 ) 多對多
  • 4) 多對多關聯hasManyThrough
  • 5) 多態關係

27) 定義一下Laravel 使用的範本引擎.

Blade 是Laravel 使用的功能強大的模板引擎。

28) 列出Laravel 支援的資料庫.

Laravel 支援下列資料庫:

  • PostgreSQL
  • #SQL Server
  • SQLite
  • MySQL

29) 為什麼遷移很重要?

遷移非常重要是因為它允許您透過維護資料庫一致性來共享應用程式。

如果不進行遷移,則很難共用任何 Laravel 應用程式。

它還允許您同步資料庫。

30) 定義 Lumen

Lumen 是一個微型框架。它是基於 Laravel 服務和 REST API 的更小,更快的版本。

31) 解釋 PHP artisan

artisan 是 Laravel 的命令列工具。它提供的命令可幫助您輕鬆建立 Laravel 應用程式。

32) 如何產生連結?

Laravel 用 helpers 函數 來產生連結。當您在模板和 API 回應中建立連結時,這將很有幫助。

33) 哪個類別用來處理例外狀況?

Laravel 異常由 App.exceptions.handler 類別處理。

34) 什麼是常見的 HTTP 錯誤代碼?

最常見的 HTTP 錯誤代碼是:

- 錯誤 404 –未找到頁面時顯示。

- 錯誤 - 401 –未授權錯誤時顯示

35) 在 Laravel 中解釋 Fluent 查詢產生器。

它是一個資料庫查詢產生器,它提供了方便,快速的介面來建立和執行資料庫查詢。

36) dd () 函數的用途是什麼?

此函數用於將變數的內容列印到瀏覽器。 dd 的完整格式是 Dump and Die。

37) 列出 Laravel 中使用的常見 artisan 指令。

Laravel 支援以下工匠指令:

  • PHP artisan down;
  • PHP artisan up;
  • PHP artisan make:controller;
  • PHP artisan make:model;
  • PHP artisan make:migration;
  • PHP artisan make:middleware;

38)在Laravel 中如何設定郵件發送?

Laravel 提供了一些 API,可以在本機和即時伺服器上發送電子郵件。

39) 解釋授權

這是一種使用密碼識別使用者登入憑證的方法。在 Laravel 中,可以使用兩個參數 1) 使用者名稱和 2) 密碼的會話來管理它。

40) delete ():從資料庫表中刪除所有記錄

-delete ():從資料庫表中刪除所有記錄。

-softDeletes ():不會從表格中刪除資料。它用於將任何記錄標記為已刪除。

41) 如何在 Laravel 中製作即時的 sitemap.xml 檔案?

您可以建立網站的所有網頁,以告知搜尋引擎有關組織網站內容的資訊。搜尋引擎的搜尋器會智慧地讀取此文件以對網站進行搜尋。

42) 解釋說明 Laravel 中的 faker.

它是用來建立偽造資料的一種模組或軟體包。此資料可用於測試目的

它也可以用於產生:

  • 1) 數字
  • 2) 位址
  • ##3)DateTime
  • 4) 付款
  • 5) Lorem 文本。

43) 您將如何檢查表格是否在資料庫中存在?

使用 Laravel 中的 hasTable () 函數檢查所需的表格是否在資料庫中存在。

44) Laravel 中 insert () 和 insertGetId () 函數之間的顯著差異是什麼?

    Insert (): 此函數只用於將記錄插入資料庫。不傳回自增 ID
  • InsertGetId (): 此函數會在表格中插入一筆記錄,但當 ID 欄位自動遞增時使用。 (插入記錄並傳回自增的ID)

45) 解釋說明Laravel 中的活動記錄- active record

在活動記錄中,類別映射到您的資料庫表。它可以幫助您處理 CRUD 操作。

46) 列出Laravel 中的基礎概念

以下是laravel 中用到的基礎概念:

    路由
  • #Eloquent ORM
  • 中間件
  • 安全
  • 快取
  • Blade 範本
##47) 定義隱式控制器。

隱含控制器可協助您定義適當的路由來處理控制器操作。您可以使用 Route :: controller () 方法在 route.php 檔案中定義它們。

48) 如何在 Laravel 模型中自訂表名?

自訂表名,您可以重寫 protected 變數 $ table 的值。

49) 什麼是 MVC 框架?

它是模型,視圖和控制器:

Model: 模型定義編寫 Laravel 應用程式的邏輯。
  • View: 它涵蓋了 Laravel 應用程式的 UI 邏輯。
  • Controller: 它是模型和視圖之間的介面。這是用戶與應用程式互動的一種方式。
50) 定義 @include.

#@include 用於載入多個模板視圖檔案。它可以幫助您將視圖納入另一個視圖。用戶還可以在一個視圖中載入多個文件。

【推薦:
最新的五個Laravel影片教學

以上是50道面試官必問的Laravel面試題【附答案】的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除