最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Laravel框架Eloquent ORM簡介、模型建立及查詢數(shù)據(jù)操作詳解

 更新時(shí)間:2019年12月04日 11:28:19   作者:陳柴Rarin  
這篇文章主要介紹了Laravel框架Eloquent ORM簡介、模型建立及查詢數(shù)據(jù)操作,結(jié)合實(shí)例形式詳細(xì)分析了laravel框架Eloquent ORM基本概念、原理、模型建立及數(shù)據(jù)查詢等相關(guān)使用技巧,需要的朋友可以參考下

本文實(shí)例講述了Laravel框架Eloquent ORM簡介、模型建立及查詢數(shù)據(jù)操作。分享給大家供大家參考,具體如下:

注:以下知識(shí)點(diǎn)可能有不全面之處,望見諒

NO.1Eloquent ORM簡介

Laravel所自帶的Eloquent ORM是一個(gè)優(yōu)美、簡潔的ActiveRecord實(shí)現(xiàn),用來實(shí)現(xiàn)數(shù)據(jù)庫操作
每個(gè)數(shù)據(jù)表都有與之相對應(yīng)的“模型(Model)”用于和數(shù)據(jù)交互

NO.2模型的建立

最基礎(chǔ)的模型代碼如下:

namespace App;
use Illuminate\Database\Eloquent\Model;
class Student extends Model
{
 //指定表名
 protected $table = 'student';
 //指定id
 protected $primaryKey = 'id';
}

將他創(chuàng)建于app目錄下,命名為Student.php

NO.3查詢數(shù)據(jù)

首先在查詢之前,我先讓你們看一下我的數(shù)據(jù)庫

數(shù)據(jù)如上,然后查詢

1.all方式

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
      $students = Student::all();
      dd($students);
 }
}

顯示數(shù)據(jù)庫里的所有數(shù)據(jù)

2.find方式

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
      $students = Student::find(1);
      dd($students);
 }
}

查找指定數(shù)據(jù)

3.findOrFail方式

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
      $students = Student::findOrFail(1);
      dd($students);
 }
}

如果他沒查到指定的數(shù)據(jù),那么他會(huì)報(bào)錯(cuò),而find若是沒有查到該函數(shù),只會(huì)彈出一個(gè)null

4.查詢構(gòu)造器的使用

  • 1.get方式使用
namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
      $students = Student::get();
      dd($students);
 }
}

他會(huì)得到一個(gè)完整的數(shù)據(jù)信息,和原本的意義沒有區(qū)別

  • 2.first方式使用

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::where('id','>',1)
     ->orderBy('age','desc')
     ->first();
     dd($student);
 }
}

當(dāng)id大于一的時(shí)候,獲取一個(gè)最大值的age

  • 3.where方式使用

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::where('id','>',1)
     ->get();
     dd($student);
 }
}

  • 4.chunk方式使用

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::chunck(2,function($student){
  var_dump($student);
 });
 }
}

5.聚合函數(shù)的使用

  • 1.count函數(shù)

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::count();
     dd($student);
 }
}

  • 2.max函數(shù)

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::max('age');
     dd($student);
 }
}

  • 3.min函數(shù)

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::min('age');
     dd($student);
 }
}

  • 4.avg函數(shù)

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::avg('age');
     dd($student);
 }
}

  • 5.sum函數(shù)

代碼如下:

namespace App\Http\Controllers;
use App\Student;
use Illuminate\Support\Facades\DB;
class StudentController extends Controller
{
 public function orm1()
  {
     $student = Student::sum('age');
     dd($student);
 }
}

更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進(jìn)階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評論

金湖县| 温泉县| 武清区| 长顺县| 工布江达县| 博客| 平邑县| 光山县| 遂溪县| 新野县| 和平县| 宜兰市| 丹凤县| 承德市| 综艺| 池州市| 和硕县| 上饶市| 石家庄市| 洪江市| 朝阳区| 孟津县| 河北区| 修水县| 锦屏县| 泰来县| 清丰县| 柘城县| 慈溪市| 通城县| 紫阳县| 罗江县| 囊谦县| 军事| 松滋市| 柘荣县| 洪江市| 丽水市| 鄱阳县| 秦皇岛市| 东乌|