久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

Laravel 5.4 - 如何設置 PDO 獲取模式?

Laravel 5.4 - How to set PDO Fetch Mode?(Laravel 5.4 - 如何設置 PDO 獲取模式?)
本文介紹了Laravel 5.4 - 如何設置 PDO 獲取模式?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

自定義獲取模式的功能已從 L5.4 中刪除,默認為 PDO::FETCH_OBJ.

The ability to customize the fetch mode was removed from L5.4 and is defaulted to PDO::FETCH_OBJ.

升級指南指出您可以使用事件偵聽器覆蓋它:

The upgrade guide states that you can override this by using an event listener:

Event::listen(StatementPrepared::class, function ($event) {
    $event->statement->setFetchMode(...);
});

我一生都無法理解如何實現這一點:

I can't for the life of me understand how to implement this:

1) 我應該把代碼放在哪里?我應該使用 EventServiceProvider 注冊它嗎?
2) StatementPrepared 事件何時觸發?(我只需要為特定的存儲庫功能更改 Fetch Mode,而不是在全局范圍內).
3) FetchMode 是否會為后續查詢自動恢復?

1) Where should I place the code? Should I register it with the EventServiceProvider?
2) When does the StatementPrepared event fire? (I only need to change the Fetch Mode for specific repository functions, not on a global scale).
3) Does the FetchMode revert itself automatically for subsequent queries?

這是我的代碼示例:

<?php

namespace AppRepositoriesBackend;

use DB;
use PDO;

class SystemRepository
{
    /**
     * Get the connection status variables.
     *
     * @return array
     */
    public function getConnectionStatus()
    {
        DB::connection('backend')->setFetchMode(PDO::FETCH_ASSOC);

        $result = DB::connection('backend')
            ->select(DB::raw("
                SHOW STATUS
                WHERE Variable_name = 'Max_used_connections'
                OR Variable_name = 'Max_used_connections_time'
                OR Variable_name = 'Threads_connected'
            "))
        ;

        DB::connection('backend')->setFetchMode(PDO::FETCH_CLASS);

        return $result;
    }
}

謝謝!

推薦答案

轉到:app/Providers/EventServiceProvider.php

將此添加到文件頂部:

use IlluminateDatabaseEventsStatementPrepared;

boot 方法中添加:

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

這篇關于Laravel 5.4 - 如何設置 PDO 獲取模式?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

add new element in laravel collection object(在 Laravel 集合對象中添加新元素)
Creating an edit modal in Laravel 5(在 Laravel 5 中創建編輯模式)
Laravel 5.5 API resources for collections (standalone data)(用于集合的 Laravel 5.5 API 資源(獨立數據))
What is the best practice to create a custom helper function in php Laravel 5?(在 php Laravel 5 中創建自定義輔助函數的最佳實踐是什么?)
No #39;Access-Control-Allow-Origin#39; header - Laravel(沒有“Access-Control-Allow-Origin標頭 - Laravel)
Laravel Passport Route redirects to login page(Laravel Passport Route 重定向到登錄頁面)
主站蜘蛛池模板: 岛国二区| 欧美在线视频一区 | 九九在线视频 | 天天操 夜夜操 | 91精品国产色综合久久不卡98 | 色888www视频在线观看 | 91精品国产色综合久久不卡蜜臀 | 午夜男人免费视频 | 亚洲成人毛片 | 欧美日韩专区 | 黄a大片| 91视频国产一区 | 久久久久久99 | 久久亚洲天堂 | 欧美在线精品一区 | 久视频在线观看 | 日韩在线精品视频 | 国产亚洲精品精品国产亚洲综合 | 亚洲视频在线观看 | 国产精品久久久久影院色老大 | 国精产品一区二区三区 | 天天爽一爽 | 91短视频网址 | 久久国产精品免费一区二区三区 | 精品欧美一区二区三区久久久小说 | 亚洲精品在线视频 | 久久久久免费精品国产 | 在线国产一区二区三区 | 美日韩免费视频 | 一区二区久久电影 | 欧美日韩精品一区二区三区四区 | 激情国产在线 | 中文字幕一级 | 欧美在线| 日韩国产中文字幕 | 国产日韩一区 | 日韩在线一区二区三区 | 亚洲免费视频播放 | 久久国产精品精品国产色婷婷 | 午夜在线影院 | 中文字幕成人 |