欢迎各位兄弟 发布技术文章
这里的技术是共享的
概述:Laravel是一个有着美好前景的年轻框架,它的社区充满着活力,相关的文档和教程完整而清晰,并为快速、安全地开发现代应用程序提供了必要的功能。在近几年对PHP框架流行度的统计中,Laravel始终遥遥领先。那么是什么让Laravel成为最成功的PHP框架?
2011年,Taylor Otwell将Laravel作为一种包含全新现代方法的框架介绍给大家。Laravel最初的设计是为了面向MVC架构的,它可以满足如事件处理、用户身份验证等各种需求。另外它还有一个由管理数据库强力支持,用于管理模块化和可扩展性代码的软件包管理器。
Laravel以其简洁、优雅的特性赢得了大家的广泛关注,无论是专家还是新手,在开发PHP项目的时候,都会第一时间的想到Laravel。本文我们将讨论为什么Laravel会成为最成功的PHP框架。
Laravel注重代码的模块化和可扩展性。你可以在包含超过5500个程序包的Packalyst目录中找到你想要添加的任何文件。Laravel的目标是让你能够找到任何想要的文件。
Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。
Laravel 自带的认证系统中,登录时使用 email 与 password 来认证用户,其实 Laravel 提供了一个属性来替换默认的 email 字段,可以在 AuthController 中添加下面的属性即可实现:
此外,还需要修改登录视图中相应的字段名称。
可以在 /vendor/laravel/framework/src/Illuminate/Foundation/Auth/AuthenticatesUsers.php文件中看到 loginUsername() 方法会优先查找该字段,如果没有设置的话,默认使用 email 字段。
首先 建表:
该快速入门指南提供了Laravel框架的基本介绍,包含了数据库迁移、Eloquent ORM、路由、验证、视图、Blade模版等内容。如果你是Laravel框架或者PHP框架的新手,这将是一个很好的起点。如果你已经在使用Laravel框架或者其他PHP框架,你可以参考我们更高级的快速入门。
本节将通过建立一个任务列表来讲解Laravel的功能,该任务列表可以用来追踪所有我们想要完成的任务(典型的“待办事项”的例子)。完整的代码已经放在Github上。
首先,你需要安装一个新的Laravel框架。你可以使用Homestead或者本地PHP环境来运行该框架。当环境配置好之后,可以使用 Composer 来安装框架:
当按照一切配置好路由,配置后,每次运行都报错,改来改去还是报各种错。
CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。
CSRF攻击和漏洞的参考文章:
CSRF是Cross Site Request Forgery的缩写,乍一看和XSS差不多的样子,但是其原理正好相反,XSS是利用合法用户获取其信息,而C
在第十节的笔记的最后提到了,不输入任何的内容,依然可以提交表单,然后数据库产生一条空数据,这显然是不行的。这一节就介绍如何做表单的验证。
有两种方法可以实现表单的验证,下面依次介绍。
首先通过命令行创建FormRequest类:
D:\wamp\www\laravel5>php artisan make:request CreateArticleRequest
Request created successfully.
安装 Laravel 5 的时候,默认的已经带了一套用户认证系统,我们可以在 routes.php 中看到下面的代码(如果你之前删除了,请添加上):
Route::controllers([
'auth' => 'Auth\AuthController',
'password' => 'Auth\PasswordController',
]);
上面使用了 Route::controllers() 方法来创建路由,但这种方法非常不推荐大家使用。上面两个分别是用于 认证(auth) 和 重置密码(password) 的。
迁移是一种数据库的版本控制。可以让团队在修改数据库结构的同时,保持彼此的进度一致。它是 Laravel 5 最强大的功能之一。
一般我们可以通过phpmyadmin或者Navicat等数据库管理工具来创建、修改数据表结构。如果就自己一个人的话还好,但是如果团队中有多个人,我们就需要导出表结构,然后传给团队中其他人,他们再把数据表结构导入他们的数据库,这时如果表中原来有数据的话就可能出现一些问题。而Laravel 5中的Migrations很好的避免了此问题。
Migrations把表结构存储为一个PHP类,通过调用其中的方法来创建、更改数据库。Migrations存放在在 database/migrations 目录中。初始情况下,其中包含了两个文件:***_create_users_table.php 和 ***_create_password_resets_table.php,分别是用户表和用户密码重置表。每个文件中都包含了 up() 和 down() 两个方法,一个用来创建、更改数据表,一个用来回滚操作,即撤 up() 中的操作。