【相關推薦:】
以下是經常問到的 Laravel 和 PHP 相關的面試問題,以便菜鳥以及有經驗的應聘者找到合適的工作。
祝福看到的您早日找到理想工作!!
學習是人類進步的階梯!!!
Laravel 是一個開源的、廣泛使用的 PHP 框架。該平臺主要用於利用 MVC 架構模式開發 web 應用程式。Laravel 是在 MIT 許可下發布的。
因此,其原始碼託管在 GitHub 上。它遵循可靠且準確的語言規則,因此是可靠的 PHP 框架。
它是 PHP 的應用程式級程式包管理器。它提供了用於管理 PHP 軟體依賴項和庫的標準格式。
HTTP 中介軟體是一種用於過濾 HTTP 請求的技術。 Laravel 包含一箇中介軟體,用於檢查應用程式使用者是否已通過身份驗證。
查詢構建器的聚合方法是:1) max (),2) min (),3) sum (),4) avg () 和 5) count ()。
路由基本上是由 URI (統一資源識別符號) 指定的端點。它在 Laravel 應用程式中充當指標。
最常見的是,路由指向控制器上的方法,還指出哪些 HTTP 方法可以存取該 URI。
路由儲存在專案根目錄下 /routes 資料夾下的檔案內。預設情況下,有幾個不同的檔案對應於應用程式的不同 「面」(「面」 來自六角形體系結構方法)。
常見的 Laravel 應用程式中使用的目錄是:
控制器是 Laravel 所基於的 「MVC」(模型 - 檢視 - 控制器) 體系結構中的 「 C」。
反向路由是一種基於符號或名稱生成 URL 的方法。它使您的 Laravel 應用程式變得靈活。
Laravel traits 是包含在另一個類中的一組函數。 一個 trait 就像一個抽象類。您不能直接範例化它,但是可以在其他的類中試用它的方法。
它們是 Laravel 框架的介面集合。 這些契約提供核心服務。 Laravel 中的契約包括相應的框架實現。
您可以在 config/app.php 組態檔中註冊服務提供者,該組態檔包含一個陣列,您可以在其中設定服務提供者的類名。
所有的門面都定義在 Illuminate\Support\Facades 名稱空間當中。
Get 方法允許在請求頭部 (header) 中傳送有限數量的資料。Post 允許在正文中傳送大量資料。
Laravel 5.6 中的預設軟體包為:
1) Envoy, 2) Passport, 3) Socialite, 4) Cashier, 5) Horizon, 6) Scout.
服務容器是用於在 Laravel 中執行依賴注入的工具。
您可以使用 enableQueryLog 方法在 Laravel 中啟用查詢紀錄檔。
事件是一種動作或者操作,可以幫助您訂閱和偵聽 Laravel 應用程式中發生的事件。當發生任何活動時,Laravel 會自動出發某些事件。
它是‘其中一種物件依賴於另一個物件’的技術。
依賴注入有三種型別:
下面是 laravel 的主要優點:
在設計任何 Laravel 應用程式時,驗證是一個重要的概念。它可以確保在將資料儲存到資料庫之前,資料始終採用預期的格式。 Laravel 提供了多種驗證資料的方法。
基礎控制器特徵是使用 ValidatesRequests 類,該類提供了一種有用的方法來驗證來自使用者端計算機的請求。
ORM 代表物件關係對映
在處理大量資料時,可以使用 cursor 方法以減少記憶體使用量
Laravel Eloquent 中可用的關係型別有:
Blade 是 Laravel 使用的功能強大的模板引擎。
Laravel 支援以下資料庫:
遷移非常重要是因為它允許您通過維護資料庫一致性來共用應用程式。
如果不進行遷移,則很難共用任何 Laravel 應用程式。
它還允許您同步資料庫。
Lumen 是一個微型框架。它是基於 Laravel 服務和 REST API 的更小,更快的版本。
artisan 是 Laravel 的命令列工具。 它提供的命令可幫助您輕鬆構建 Laravel 應用程式。
Laravel 用 helpers 函數 來生成連結。 當您在模板和 API 響應中建立連結時,這將很有幫助。
Laravel 異常由 App.exceptions.handler 類處理。
最常見的 HTTP 錯誤程式碼是:
- 錯誤 404 –未找到頁面時顯示。
- 錯誤 - 401 –未授權錯誤時顯示
它是一個資料庫查詢生成器,它提供了方便,快捷的介面來建立和執行資料庫查詢。
此函數用於將變數的內容列印到瀏覽器。 dd 的完整格式是 Dump and Die。
Laravel 支援以下工匠命令:
PHP artisan down;
PHP artisan up;
PHP artisan make:controller;
PHP artisan make:model;
PHP artisan make:migration;
PHP artisan make:middleware;
Laravel 提供了一些 API,可以在本地和實時伺服器上傳送電子郵件。
這是一種使用密碼標識使用者登入憑據的方法。在 Laravel 中,可以使用帶有兩個引數 1) 使用者名稱和 2) 密碼的對談來管理它。
-delete ():從資料庫表中刪除所有記錄。
-softDeletes ():不會從表中刪除資料。它用於將任何記錄標記為已刪除。
您可以建立網站的所有網頁,以告知搜尋引擎有關組織網站內容的資訊。搜尋引擎的搜尋器會智慧地讀取此檔案以對網站進行搜尋。
它是用於建立偽造資料的一種模組或軟體包。此資料可用於測試目的
它也可以用於生成:
數位
地址
DateTime
付款
Lorem 文字。
您將如何檢查表是否在資料庫中存在?
使用 Laravel 中的 hasTable () 函數檢查所需的表是否在資料庫中存在。
Insert (): 此函數僅用於將記錄插入資料庫。 不返回自增 ID
InsertGetId (): 此函數會在表中插入一條記錄,但當 ID 欄位自動遞增時使用。(插入記錄並返回自增的 ID)
在活動記錄中,類對映到您的資料庫表。它可以幫助您處理 CRUD 操作。
以下是 laravel 中用到的基礎概念:
隱式控制器可幫助您定義適當的路由來處理控制器操作。您可以使用 Route :: controller () 方法在 route.php 檔案中定義它們。
自定義表名,您可以重寫 protected 變數 $ table 的值。
它是模型,檢視和控制器:
Model: 模型定義編寫 Laravel 應用程式的邏輯。
View: 它涵蓋了 Laravel 應用程式的 UI 邏輯。
Controller: 它是模型和檢視之間的介面。這是使用者與應用程式互動的一種方式。
@include 用於載入多個模板檢視檔案。它可以幫助您將檢視包括在另一個檢視中。使用者還可以在一個檢視中載入多個檔案。
Cookies 是從特定網站傳送的小檔案,並且在使用者瀏覽時由使用者的瀏覽器儲存在 PC 上。
要建立與資料庫的連線,可以使用.env 檔案。
Eloquent 是 在 laravel 中使用的 ORM 。它提供了簡單的 active record 實現, 配合資料庫使用。每個資料庫表都有其模型,該模型用於與表進行互動。
Laravel 安裝具有一組內建的通用身份驗證控制器。這些控制器是:
RegisterController
LoginController
ResetPasswordController
ForgetPasswordController
Laravel Guard 是一個用於查詢經過身份驗證使用者的特殊元件。
最初將請求的傳入路由通過此防護來驗證使用者輸入的憑據。防護措施在../config/auth.php 檔案中定義。
這是 Laravel 的功能。它提供了限流處理功能。限流可幫助 Laravel 開發人員開發安全的應用程式並防止 DOS 攻擊。
集合 Collections 是用於陣列的包裝器類。 Laravel Eloquent 的查詢使用一組最常用的函數來返回資料庫結果。
DB Facade 用於執行 SQL 查詢,例如建立,查詢,更新,插入和刪除。
物件關係對映是一種技術,可幫助開發人員在不考慮物件及其資料來源之間的關係的情況下定址,存取和操縱物件。
它允許將您所有的應用程式請求路由到控制器。 Laravel 路由確認並接受帶閉包的統一資源識別符號。
Ajax 代表非同步 JavaScript,XML 是一種 Web 開發技術,用於建立非同步 Web 應用程式。在 Laravel 中,response () 和 json () 函數用於建立非同步 Web 應用程式。
session 用於將使用者資訊從一個網頁傳遞到另一網頁。 Laravel 提供了各種驅動程式 (例如 cookie,陣列,檔案,Memcached 和 Redis) 來處理對談資料。
通過在 HTTP 請求中建立對談的範例,可以存取對談資料。獲取範例後,將 get () 方法與 「 Key」 作為引數一起使用以獲取對談詳細資訊。
認證是指通過憑據確認使用者身份,而授權是指收集對系統的存取許可權。
監聽器 - listeners 用於處理事件和異常。 Laravel 中用於登入事件的最常見的監聽器是 LoginListener。
策略類包括 Laravel 應用程式的授權邏輯。這些類用於特定的模型或資源。
需要使用 artisan 命令回滾上一次遷移。
Laravel Dusk 是用於測試啟用 JavaScript 的應用程式的工具。它提供了強大的瀏覽器自動化和測試 API。
它是一個 JavaScript 庫,可以訂閱和收聽通道 Laravel 事件。您可以使用 NPM 軟體包管理器來安裝 echo。
Laravel 開發人員可以使用 make 方法來繫結介面以建立類。此方法返回類或介面的範例。 Laravel 自動注入在類建構函式中定義的依賴項。
所有控制器和路由都應返回響應,然後將其傳送回 Web 瀏覽器。 Laravel 提供了多種方法來返回此響應。最基本的響應是從控制器或路由返回一個字串。
Laravel 的一個功能是我們可以重複使用類似的查詢。我們不需要在 Laravel 專案中再次編寫相同型別的查詢。定義範圍後,只需在查詢模型時呼叫 scope 方法即可。
Laravel homestead 是官方的,一次性的,預包裝的 vagrant box ,它具有強大的開發環境, 而且無需在計算機上安裝 HHVM,Web 伺服器和 PHP。
名稱空間允許使用者使用特定名稱將函數,類和常數分組。
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。 |
Model Observers 是 Laravel 的功能。它用於為模型建立事件監聽器的群集。這些類的方法名稱描述了 Eloquent 事件。Observers 類方法將模型作為引數接收。
它用於初始化 Laravel 專案。這個引導目錄包含負責引導框架的 app.php 檔案。
Laravel 對談的預設超時時間為 2 小時。
使用 clear-compiled 命令刪除已編譯的類檔案。
Robot.txt 檔案放置在 「Public」 目錄中。
其路由對應於 API 叢集。它具有在 Laravel 中預設啟用的 API 中介軟體。這些路由沒有任何狀態和交叉請求記憶體,也沒有 session 對談。
定義路由是一種生成路由路徑的方法。 這些路由的連結可以通過在定義路由方法中進行說明
開源軟體是可以免費獲得原始碼的軟體。原始碼可以根據使用者要求進行共用和修改。
它是一種生成系統錯誤紀錄檔的技術。 Loggin 有助於提高系統的可靠性。 Laravel 支援各種紀錄檔記錄模式,例如 syslog,每日,單次和錯誤紀錄檔記錄模式。
Laravel 的一個功能是支援應用程式中使用的各種語言。開發人員可以在檔案中儲存不同語言的字串,這些檔案儲存在 resources /views 資料夾中。開發人員應為每種支援的語言建立一個單獨的資料夾。
這是將文字轉換為顯示原始文字的 key 的方法。 Laravel 使用 Hash facade 以雜湊方式安全地儲存密碼。
加密是使用某些演演算法以第三使用者無法讀取資訊的方式轉換任何資訊的過程。加密可以保護您的敏感資訊不受入侵。
使用加密過程執行加密。要加密的訊息稱為純訊息。加密後獲得的訊息稱為密碼訊息。將密文轉換為純文字或訊息時,此過程稱為解密。
要將資料傳遞給 Laravel 中的所有檢視,請使用稱為 share () 的方法。此方法採用兩個引數,即 key 和 value。
通常,從 Laravel 應用程式 service provider 的 boot 方法呼叫 share () 方法。開發人員可以使用任何 service provider,AppServiceProvider 或我們自己的 service provider。
Web.php 是基於公眾的 「瀏覽器」 路由。 這是最常見的途徑,也是網路瀏覽器會遇到的問題。 它們遍歷 Web 中介軟體組,還包含 CSRF 保護工具 (有助於防禦基於表單的惡意攻擊和駭客攻擊),並且通常包含一定程度的 「狀態」 (我的意思是他們利用 session 對談).
在 Laravel 中使用以下 artisan 命令生成請求:
php artisan make:request UploadFileRequest
【相關推薦:】
以上就是歸納整理常見的laravel面試題的詳細內容,更多請關注TW511.COM其它相關文章!