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

淺談laravel數(shù)據(jù)庫查詢返回的數(shù)據(jù)形式

 更新時間:2019年10月21日 17:35:00   作者:尋夢1314  
今天小編就為大家分享一篇淺談laravel數(shù)據(jù)庫查詢返回的數(shù)據(jù)形式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

版本:laravel5.4+

問題描述:laravel數(shù)據(jù)庫查詢返回的數(shù)據(jù)不是單純的數(shù)組形式,而是數(shù)組與類似stdClass Object這種對象的結(jié)合體,即使在查詢構(gòu)造器中調(diào)用了toArray(),也無法轉(zhuǎn)換成單純的數(shù)組形式。

問題解析:

(以上圖片來源于laravel學(xué)院5.3版本到5.4版本的升級手冊)

如上圖所示:Laravel不再支持在配置文件中定制PDO的“fetch mode”,取而代之,總是使用PDO::FETCH_OBJ,如果你仍然想要為應(yīng)用定制fetch模式,需要監(jiān)聽新的Illuminate\Database\Events\StatementPrepared事件。

問題解決:

打開app/Providers/EventServiceProvier.php,如文檔上所說,我們要先引入Illuminate\Database\Events\StatementPrepared類

use Illuminate\Database\Events\StatementPrepared;

然后在boot方法中加入如圖中給出的樣例代碼:

Event::listen(StatementPrepared::class, function ($event) {
    $event->statement->setFetchMode(\PDO::FETCH_ASSOC); //這里我們使用PDO::FETCH_ASSOC
});

這樣我們就大功告成啦,現(xiàn)在你的laravel數(shù)據(jù)庫查詢返回的數(shù)據(jù)就是單純的數(shù)組形式。

最后附上app/Providers/EventServiceProvier.php的整體代碼:

<?php
namespace App\Providers;

use Illuminate\Support\Facades\Event;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
use Illuminate\Database\Events\StatementPrepared;

class EventServiceProvider extends ServiceProvider{
  /**
  * The event listener mappings for the application.
  *  
  * @var array
  */
  protected $listen = [
    'App\Events\Event' => [
      'App\Listeners\EventListener',
    ],
  ];
  /**
  * Register any events for your application.
  *
  * @return void
  */
  public function boot()
  {
    parent::boot();

    //
    Event::listen(StatementPrepared::class, function ($event) {
      $event->statement->setFetchMode(\PDO::FETCH_ASSOC);
    });
  }
}

以上這篇淺談laravel數(shù)據(jù)庫查詢返回的數(shù)據(jù)形式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • ThinkPHP 在阿里云上的nginx.config配置實例詳解

    ThinkPHP 在阿里云上的nginx.config配置實例詳解

    這篇文章主要介紹了ThinkPHP 在阿里云上的nginx.config配置實例詳解,需要的朋友可以參考下
    2017-10-10
  • Laravel中注冊Facades的步驟詳解

    Laravel中注冊Facades的步驟詳解

    這篇文章主要介紹了Laravel中注冊Facades的步驟,詳細分析了Laravel中注冊Facades的原理,實現(xiàn)方法與相關(guān)注意事項,需要的朋友可以參考下
    2016-03-03
  • PHP新建類問題分析及解決思路

    PHP新建類問題分析及解決思路

    這篇文章給大家介紹php新建類相關(guān)問題分析及解決辦法,涉及到php新建類相關(guān)知識,本文介紹的非常詳細,非常具有參考借鑒價值特此分享供大家參考
    2015-11-11
  • 基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法詳解

    基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法詳解

    本篇文章是對AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • 如何讓CI框架支持service層

    如何讓CI框架支持service層

    本文主要介紹了在controller和model中加一個業(yè)務(wù)層service,由它來負責(zé)業(yè)務(wù)邏輯,封裝好的調(diào)用接口可以被controller復(fù)用,提高了通用的業(yè)務(wù)邏輯的復(fù)用性,設(shè)計到具體業(yè)務(wù)實現(xiàn)會調(diào)用Model的接口。
    2014-10-10
  • 使用PHPUnit進行單元測試并生成代碼覆蓋率報告的方法

    使用PHPUnit進行單元測試并生成代碼覆蓋率報告的方法

    這篇文章主要介紹了使用PHPUnit進行單元測試并生成代碼覆蓋率報告的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • Thinkphp3.2簡單解決多文件上傳只上傳一張的問題

    Thinkphp3.2簡單解決多文件上傳只上傳一張的問題

    下面小編就為大家?guī)硪黄猅hinkphp3.2簡單解決多文件上傳只上傳一張的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • php 生成Tab鍵或逗號分隔的CSV

    php 生成Tab鍵或逗號分隔的CSV

    這篇文章主要介紹了php 生成Tab鍵或逗號分隔的CSV的相關(guān)資料,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • thinkphp5.1框架容器與依賴注入實例分析

    thinkphp5.1框架容器與依賴注入實例分析

    這篇文章主要介紹了thinkphp5.1框架容器與依賴注入,結(jié)合實例形式分析了thinkPHP5.1容器與依賴注入相關(guān)原理與使用技巧,需要的朋友可以參考下
    2019-07-07
  • php網(wǎng)頁版聊天軟件實現(xiàn)代碼

    php網(wǎng)頁版聊天軟件實現(xiàn)代碼

    這篇文章主要介紹了php網(wǎng)頁版聊天軟件實現(xiàn)代碼,可以實現(xiàn)匿名聊天,感興趣的小伙伴們可以參考一下
    2016-08-08

最新評論

聂拉木县| 台山市| 宽城| 班玛县| 玛曲县| 新沂市| 文登市| 额敏县| 长子县| 宁武县| 额尔古纳市| 昌黎县| 新密市| 赣榆县| 乌拉特中旗| 桐城市| 平陆县| 探索| 清原| 施甸县| 嘉黎县| 贡觉县| 陆丰市| 长沙县| 穆棱市| 尼勒克县| 花莲市| 德钦县| 海口市| 泸定县| 桂阳县| 通山县| 晋江市| 定州市| 贵阳市| 兴文县| 三亚市| 永修县| 阿荣旗| 桂林市| 南通市|