正在筛选分类: PHP

PHP 中&有两种用法, 而&&只有一种.

PHP 中isset(), empty(), array_key_exists()的用处及区别

难记的 phpStorm 快捷键

所有路由和控制器都应该返回响应, 用于反馈给浏览器.

Laravel提供若干不同方法创建响应.

要通过依赖获取当前 HTTP 请求实例, 可以在控制器方法中 type-hint Illuminate\Http\Request 类. 请求实例会由 service container 自动注入.

相比在路由文件的闭包中定义所有请求处理逻辑, 也许你更希望用控制器类来组织这些行为. 控制器可以用单个类处理一组关联的请求. 控制器都储存在 app/Http/Controllers 目录内.

Laravel 框架使应用防范跨站请求伪造 (cross-site request forgery, CSRF) 攻击. 跨站请求伪造是一类利用用户执行的未授权命令进行的恶意攻击.

Middleware 是一种方便的, 用于过滤 HTTP 请求的机制. 例如, Laravel 有用于验证用户权限的 middleware. 如果用户未登录, middleware 会将其重定向至用户登录界面. 如果用户登录了, middleware 会将请求传递给应用做进一步处理.

Laravel 所有的路由都在路由文件中定义, 位于 routes 目录下. 这些文件将由框架自动加载. routes/web.php 文件定义 web 接口的路由. 这类路由默认分配了 web 中间件组, 用于提供 session state, CSRF 防护等功能. routes/api.php 中定义的路由是无状态的, 并默认分配了 api中间件组.

Laravel's Contracts 是一组定义框架核心服务的接口. 比如, Illuminate\Contracts\Queue\Queue contract 定义了序列作业需要的方法, 而 Illuminate\Contracts\Mail\Mailer contract 定义了发送 e-mail 需要的方法.

每个 contract 都有一个框架提供的相应实现.

Laravel facades 用于在 service container 中提供类的 "静态" 接口. Laravel 安装时自带很多的 facades, 提供了使用几乎所有 Laravel 的特性的途径. Laravel facades 的功能类似 "静态代理" , 通往位于 service container 内的具体类, 并向用户提供简练的, 易理解的语法, 以在开发过程中获得比传统静态方法更强的可测试性和灵活性.

在 "现实世界" 中使用工具的时候, 你通常可以使用得非常自信, 因为你知道它是如何工作的. 应用开发也不外乎. 当你了解开发工具的工作方式后, 你才可以使用得更加舒服和自信.

Laravel 默认的目录结构致力于提供大型和小型应用均方便使用的起始结构. 当然, 你可以按你自己喜欢的方式组织你的应用. Laravel 几乎没有任何对目录结构的强制需求 - 只要配置好 Composer 自动加载就可以.

Laravel 框架的所有配置文件都位于 config 目录下. 所有条目都有对应文档, 你可以自由地查看各项配置并根据需要进行修改.

Lararvel 框架对系统的要求很少. 当然, 在 Laravel Homestead 虚拟机中, 这些要求都已经被满足了, 所以我们强烈建议你使用 Homestead, 而不是本地开发环境.