首頁  >  文章  >  後端開發  >  輕鬆學會Laravel-基礎篇

輕鬆學會Laravel-基礎篇

黄舟
黄舟原創
2017-08-31 14:11:171453瀏覽

Laravel框架是世界上最受歡迎的PHP開發框架,沒有之一。近年來Laravel以強大、安全、優雅等特性迅速佔據了PHP開發框架第一份額的寶座。現在Laravel框架已成為大型網路公司及PHP攻城獅們的首選框架。

輕鬆學會Laravel-基礎篇

課程播放網址: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