[TOC]
## 獲取所有行:`DB` facade 的 `get` 方法
`get` 方法可以獲取表中所有記錄:
~~~php
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;
use App\Http\Controllers\Controller;
class UserController extends Controller
{
/**
* Show a list of all of the application's users.
*
* @return Response
*/
public function index()
{
$users = DB::table('users')->get();
return view('user.index', ['users' => $users]);
}
}
~~~
`get` 方法會返回一個 `Illuminate\Support\Collection` 結果集,其中每個結果都是一個 PHP 的`StdClass` 對象實例。可以像訪問對象的屬性一樣訪問字段的值:
~~~php
foreach ($users as $user) {
echo $user->name;
}
~~~
## 獲取單個行或列:`DB` facade 的 `first` 或 `value` 方法
`first` 方法只從數據表中獲取一行數據 ,返回單個 `StdClass` 對象:
~~~php
$user = DB::table('users')->where('name', 'John')->first();
echo $user->name;
~~~
`value` 方法來從單條記錄中取出單個值。此方法將直接返回字段的值:
~~~php
$email = DB::table('users')->where('name', 'John')->value('email');
~~~
## 獲取一列的值:`DB` facade 的 `pluck` 方法
`pluck` 方法獲取一個包含單個字段值的集合 。在下面的例子中,我們將取出 `roles` 表中 `title` 字段的集合:
~~~php
$titles = DB::table('roles')->pluck('title');
foreach ($titles as $title) {
echo $title;
}
~~~
還可以在返回數組中為列值指定自定義鍵(該自定義鍵必須是該表的其它字段列名,否則會報錯):
~~~php
$roles = DB::table('roles')->pluck('title', 'name');
foreach ($roles as $name => $title) {
echo $title;
}
~~~
- 日常命令
- 第一章 開發環境部署
- 第一節 安裝 VirtualBox
- 第二節 安裝 Vagrant
- 第三節 安裝 Git for Windows
- 命令行提示符的寫作約定
- Git Bash 使用技巧
- 第四節 安裝和配置 Homestead
- 第五節 啟動 Homestead 虛擬機
- 第六節 創建 Laravel 應用
- 第七節 使用 Git 進行版本控制
- 總結 本章命令概覽
- 第二章 前端工作流
- 第一節 Yarn 安裝前端擴展包
- 第二節 Laravel Mix 前端資源編譯
- (1)配置 webpack.mix.js 指定 Mix 任務
- (2)修改 resources/assets 前端資源文件
- (3)運行 Mix 任務編譯和監控代碼
- 總結 本章命令概覽
- 第三章 數據庫
- 第一節 Config 數據庫配置信息
- 第二節 Migrations 數據庫遷移文件
- 第三節 Schema 數據庫結構生成器
- (1) 數據表操作
- (2) 字段操作
- (3) 索引操作
- 第四節 Seeding 數據填充
- 第五節 DB 數據庫查詢構建器
- (1)獲取結果集