首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何访问Zend Framework3中执行的SQL查询?

问如何访问Zend Framework3中执行的SQL查询?
EN

Stack Overflow用户
提问于 2019-11-15 23:07:20
回答 1查看 149关注 0票数 0

如何访问Zend Framework3正在执行的所有SQL查询?

EN

回答 1

Stack Overflow用户

发布于 2019-11-15 23:07:20

在Zend Framework3中,您可以使用“分析”来跟踪SQL查询的性能。这也可用于访问已执行的SQL查询。

在数据库配置中,在某个适配器上设置profiler = true选项,如下所示:

代码语言:javascript
复制
<?php
return [
    'db' => [
        'adapters' => [
            'adapter1' => [
                'dsn' => 'mysql:dbname=dbname;host=127.0.0.1',
                'username' => '',
                'password' => '',
                'profiler' => true,
            ],
        ],
    ],
];

然后获取适配器(它是一个具有相应名称的服务)并获取驱动程序、分析器和配置文件。Profiles是一个包含所有sql语句的数组。

代码语言:javascript
复制
$adapter = $application->getServiceManager()->get('adapter1'); 
$profiles = $adapter->getDriver()->getProfiler()->getProfiles();

每个概要文件都是一个具有关联关键字"sql“的数组,原始查询就是在这里存储的。

代码语言:javascript
复制
$firstSqlQuery = $profiles[0]['sql'];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58879752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档