Tôi muốn nhận được truy vấn SQL INSERT chính xác mà Doctrine tạo ra khi phương thức save() của đối tượng được gọi.Học thuyết - cách nhận truy vấn SQL INSERT, trong sự kiện postSave()?
Tốt hơn là, tôi muốn lấy nó trong sự kiện postSave() của mô hình và ghi nó vào một tệp txt.
Ví dụ:
<?php
$user = new User(); // A Doctrine Model with timestampable behavior enabled
$user->first_name = 'Manny';
$user->last_name = 'Calavera';
$user->save();
?>
Tôi muốn nhận/đăng nhập truy vấn SQL sau:
INSERT INTO user (first_name, last_name, created_at, updated_at) VALUES ('Manny', 'Calavera', '2010-08-03 12:00:00', '2010-08-03 12:00:00');
Các nền cho cần này, là tôi muốn khối lượng nhập khẩu sau các dữ liệu bằng cách phân tích cú pháp tệp txt.
đừng quên thêm một số điều kiện trước $ event-> getQuery(), bạn có thể sử dụng "if (! (Stripos ($ event-> getQuery, 'INTO log')) && (strtoupper (substr ($ event) -> getQuery(), 0, 6))! = 'SELECT') && strtoupper (substr ($ event-> getQuery(), 0, 3))! = 'SET') " – HQM