有没有办法在phpstorm中打印出SQL查询语句?

时间:2015-02-25 12:22:18

标签: php zend-framework

我目前正在调试php代码。其中一个麻烦是,我不知道如何打印出变量的值。我们的代码在Zend框架中构建,IDE是phpstorm。

例如,对于以下SQL查询,如何打印出发送到数据库的实际sql语句?或者,换句话说,有没有办法将$ query作为字符串打印到某个地方?比如Chrome的控制台?谢谢你的建议。

$query = DB::table('ctre_contact AS contact')
                ->join('ctre_company AS company', 'company.id', '=', 'contact.company_id')
                ->select(
                    'contact.id',
                    'contact.first_name',
                    'contact.last_name',
                    'company.name AS company_name',
                    DB::raw("COALESCE(FIND_IN_SET(contact.id, '$program->client_admin'), 0) AS is_client_admin"),
                    DB::raw("COALESCE(FIND_IN_SET(contact.id, '$program->program_admin'), 0) AS is_program_admin"),
                    DB::raw("COALESCE(FIND_IN_SET(contact.id, '$program->user'), 0) AS is_user"),
                    DB::raw("COALESCE(FIND_IN_SET(contact.id, '$program->user_monitor_role'), 0) AS is_user_monitor")
                );

            if (!empty($where)) {
                $query->whereRaw(join(" AND ", $where));
            }

1 个答案:

答案 0 :(得分:1)

您可以使用__toString()函数执行此操作:

$sql = $query->__toString();