php-programmist/file-sql-logger-bundle

提供将所有可变查询记录到文件的服务

v1.0.0 2020-03-21 18:09 UTC

This package is auto-updated.

Last update: 2024-09-22 04:12:47 UTC


README

此包提供实现SQLLogger接口的服务。使用此服务,您可以记录Doctine的所有修改查询(插入、更新和删除)。

安装

composer require php-programmist/file-sql-logger-bundle

使用

//src/Controller/SomeController.php
namespace App\Controller;

use PhpProgrammist\FileSqlLoggerBundle\FileSqlLogger;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;

class SomeController extends AbstractController
{
    public function index(FileSqlLogger $sql_logger)
    {
        $connection = $this->getDoctrine()->getConnection();
        $connection->getConfiguration()->setSQLLogger($sql_logger);
        $em = $this->getDoctrine()->getManager();
        //make queries for some entities and change it
        $em->flush();
        ...
    }
}

配置

默认情况下,日志将被写入到/sql/文件夹。您可以通过配置更改文件夹。

创建文件config/packages/file_sql_logger.yaml

file_sql_logger:
    path_to_logs: '%kernel.project_dir%/sql/'