建站代码网

热门标签

91 个常见的 Laravel 面试题和答案

以下是经常问到的 Laravel 和 PHP 相关的面试问题,以便菜鸟以及有经验的应聘者找到合适的工作。
 
 
 
1) 什么是 Laravel ?
 
Laravel 是一个开源的、广泛使用的 PHP 框架。该平台主要用于利用 MVC 架构模式开发 web 应用程序。
 
Laravel 是在 MIT 许可下发布的。因此,其源代码托管在 GitHub 上。它遵循可靠且准确的语言规则,因此是可靠的 PHP 框架。
 
 
 
2) 定义 Composer
 
它是 PHP 的应用程序级程序包管理器。
 
它提供了用于管理 PHP 软件依赖项和库的标准格式。
 
 
 
3) 什么是 HTTP 中间件?
 
HTTP 中间件是一种用于过滤 HTTP 请求的技术。
 
Laravel 包含一个中间件,用于检查应用程序用户是否已通过身份验证。
 
 
 
4) 聚合查询生成器的方法名称
 
查询构建器的聚合方法是:
 
max ()
 
min ()
 
sum ()
 
avg () 
 
count ()
 
 
 
5) 什么是 Route ?
 
路由基本上是由 URI (统一资源标识符) 指定的端点。
 
它在 Laravel 应用程序中充当指针。
 
最常见的是,路由指向控制器上的方法,还指出哪些 HTTP 方法可以访问该 URI。
 
 
 
6) 为什么使用 Route?
 
路由存储在项目根目录下 /routes 文件夹下的文件内。默认情况下,有几个不同的文件对应于应用程序的不同 “面”(“面” 来自六角形体系结构方法)。
 
 
 
7) 解释通用 Laravel 应用程序中使用的重要目录
 
常见的 Laravel 应用程序中使用的目录是:
 
App/: 这是我们的应用程序代码所在的源文件夹。所有控制器,策略和模型都在此文件夹中。
 
Config/: 保存应用程序的配置文件。这些通常不会直接修改,而是取决于在应用程序根目录下的 .env (环境) 文件中设置的值。
 
Database/: 存放数据库文件,包括 迁移,数据填充,和测试工厂。
 
Public/: 可公开访问的文件夹,其中包含已编译资源,当然还有 index.php 文件。
 
 
 
8) 什么是 Controller?
 
控制器是 Laravel 所基于的 “MVC”(模型 - 视图 - 控制器) 体系结构中的 “ C”。
 
 
 
9) 如何在 Laravel 中生成请求?
 
在 Laravel 中使用以下 artisan 命令生成请求:
 
php artisan make:request UploadFileRequest
 
 
10) 解释 Laravel 中的反向路由。
 
反向路由是一种基于符号或名称生成 URL 的方法。
 
它使您的 Laravel 应用程序变得灵活。
 
 
 
11) 解释 web.php 路由
 
Web.php 是基于公众的 “浏览器” 路由。这是最常见的途径,也是网络浏览器会遇到的问题。 
 
它们遍历 Web 中间件组,还包含 CSRF 保护工具 (有助于防御基于表单的恶意攻击和黑客攻击),并且通常包含一定程度的 “状态” (我的意思是他们利用 session 会话)。
 
 
 
12) 解释 Laravel 中 traits 的特征。
 
Laravel traits 是包含在另一个类中的一组函数。 
 
一个 trait 就像一个抽象类。
 
不能直接实例化它,但是可以在其他的类中使用它的方法。
 
 
 
13) 解释 Laravel 中契约的概念。
 
它们是 Laravel 框架的接口集合。这些契约提供核心服务。Laravel 中的契约包括相应的框架实现。
 
 
 
14) 如何注册您的服务提供者?
 
您可以在 config/app.php 配置文件中注册服务提供者,该配置文件包含一个数组,您可以在其中配置服务提供者的类名。
 
 
 
15) 如何定义 Laravel 的门面?
 
所有的门面都定义在 Illuminate\Support\Facades 命名空间当中。
 
 
 
16) 说明 get 与 post 之间的区别
 
Get 方法允许在请求头部 (header) 中发送有限数量的数据。Post 允许在正文中发送大量数据。
 
 
 
17) 列出 Laravel 5.6 中的软件包
 
Laravel 5.6 中的默认软件包为:
 
Envoy
 
Passport
 
Socialite
 
Cashier
 
Horizon
 
Scout
 
 
 
18) Laravel 中的服务容器是什么
 
服务容器是用于在 Laravel 中执行依赖注入的工具。
 
 
 
19) 如何在 Laravel 中开启查询日志?
 
您可以使用 enableQueryLog 方法在 Laravel 中启用查询日志。
 
 
 
20) 解释 Laravel 中事件的概念。
 
事件是一种动作或者操作,可以帮助您订阅和侦听 Laravel 应用程序中发生的事件。当发生任何活动时,Laravel 会自动出发某些事件。
21) 说一下依赖注入和依赖注入的类型
 
它是‘其中一种对象依赖于另一个对象’的技术。依赖注入有三种类型:
 
构造函数注入
 
setter 注入
 
接口注入
 
 
 
22) 使用 laravel 有什么优势吗?
 
Laravel 具有 blade 模板引擎,可创建动态布局并增加编译任务
 
可以很简单的复用代码
 
您不需要手动维护和包含路径,因为 Laravel 具有自动加载功能
 
该框架可帮助您使用 LOC 容器制作新工具
 
Laravel 提供了一个版本控制系统,可帮助简化迁移管理
 
 
X