首页 >后端开发 >php教程 >轻松学会Laravel-基础篇

轻松学会Laravel-基础篇

黄舟
黄舟原创
2017-08-31 14:11:171476浏览

Laravel框架是世界上最流行的PHP开发框架,没有之一。近年来Laravel以强大、安全、优雅等特性迅速占据了PHP开发框架第一份额的宝座。现在Laravel框架已成为大型互联网公司及PHP攻城狮们的首选框架。

EMEB_~39WLR_~`D(IH3%[%O.png

课程播放地址:http://www.php.cn/course/282.html

该老师讲课风格:

讲课亲切自然,朴实无华,没有矫揉造作,也不刻意渲染,而是娓娓而谈,细细道来,师生之间在一种平等、协作、和谐的气氛下,进行默默的情感交流,将对知识的渴求和探索融于简朴、真实的教学情景之中,学生在静静的思考、默默的首肯中获得知识

本视频中较为难点是Eloquent OR了:

什么是 Eloquent

Eloquent 是 Laravel 的 'ORM',即 'Object Relational Mapping',对象关系映射。ORM 的出现是为了帮我们把对数据库的操作变得更加地方便。

Eloquent 让一个 'Model类' 对应一张数据库表,并且在底层封装了很多 'function',可以让 Model 类非常方便地调用。我们以 Learn-Laravel-4 中的 'app/models/Article.php' 为例大致说明一下。这个文件的代码如下:

<?php 
class Article extends \Eloquent { 
protected $fillable = []; 
}

'protected $fillable = [];' 这一行代码在这里没有任何价值,是 generator 自动生成的,在此我们不做讨论。

这个类简直再简单不过了,没有指定命名空间,没有构造函数,如果那一行没有意义的代码也不算上的话,这个文件就只有两个有实际意义的东西: 'Article' 和 '\Eloquent'。没错,Eloquent 就是这么屌炸天,只需要继承一下 Eloquent 类,就可以干 'first() find() where() orderBy()' 等非常非常多的事情,这就是面向对象的强大威力。

Eloquent 基本用法

废话不多说,下面我将直接展示 Eloquent 的几种常见用法的代码,在 MarkDown 编辑器里面纯手打,若有拼写错误大家见谅。

找到 id 为 2 的文章打印其标题

$article = Article::find(2); 
echo $article->title;

查找标题为“我是标题”的文章,并打印 id

$article = Article::where(&#39;title&#39;, &#39;我是标题&#39;)->first(); 
echo $article->id;

查询出所有文章并循环打印出所有标题

$articles = Article::all(); // 此处得到的 $articles 是一个对象集合,可以在后面加上 &#39;->toArray()&#39; 变成多维数组。 
foreach ($articles as $article) {     
echo $article->title; 
}

查找 id 在 10~20 之间的所有文章并打印所有标题

$articles = Article::where(&#39;id&#39;, &#39;>&#39;, 10)->where(&#39;id&#39;, &#39;<&#39;, 20)->get(); 
foreach ($articles as $article) {     
echo $article->title; }

查询出所有文章并循环打印出所有标题,按照 updated_at 倒序排序

$articles = Article::where(&#39;id&#39;, &#39;>&#39;, 10)->where(&#39;id&#39;, &#39;<&#39;, 20)->orderBy(&#39;updated_at&#39;, &#39;desc&#39;)->get(); 
foreach ($articles as $article) {     
echo $article->title; 
}

基础使用要点

1. 每一个继承了 Eloquent 的类都有两个 '固定用法' 'Article::find($number)' 'Article::all()',前者会得到一个带有数据库中取出来值的对象,后者会得到一个包含整个数据库的对象合集。

2. 所有的中间方法如 'where()' 'orderBy()' 等都能够同时支持 '静态' 和 '非静态链式' 两种方式调用,即 'Article::where()...' 和 'Article::....->where()'。

3. 所有的 '非固定用法' 的调用最后都需要一个操作来 '收尾',本片教程中有两个 '收尾操作':'->get()' 和 '->first()'。

4. 如果你不理解为什么 'Article' 这个类可以使用 '->where()' '->get()' 等很多方法的话,说明你需要去读一下 PHP 对象继承的文档了:对象继承。

以上是轻松学会Laravel-基础篇的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn