Rumah >pembangunan bahagian belakang >tutorial php >## Bagaimana untuk Memeriksa Pertanyaan Sebenar yang Dilaksanakan oleh PDO dalam PHP?

## Bagaimana untuk Memeriksa Pertanyaan Sebenar yang Dilaksanakan oleh PDO dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-10-25 19:22:281018semak imbas

##  How to Inspect the Actual Query Executed by PDO in PHP?

Cara Memeriksa Pertanyaan Parameter dalam PHP dengan PDO

Apabila menggunakan PDO untuk akses pangkalan data dalam PHP, menggunakan pertanyaan berparameter meningkatkan keselamatan dengan melindungi terhadap suntikan SQL. Walau bagaimanapun, ia boleh mencabar untuk mengesahkan pertanyaan sebenar yang dilaksanakan oleh pangkalan data, kerana pertanyaan dengan token dan parameter dihantar secara berasingan.

Pengambilan Terus Tidak Mungkin

Sebagaimana Ben James menjelaskan, tidak ada kaedah langsung untuk mendapatkan pertanyaan SQL lengkap di sebelah PHP. Ini kerana pangkalan data menerima pertanyaan dengan token dan parameter secara bebas, dan pertanyaan sebenar dipasang dalam pangkalan data. Meniru proses penggantian pada bahagian PHP juga tidak boleh dilaksanakan kerana variasi dalam pengendalian token dan teknik mengikat.

Log sebagai Penyelesaian

Untuk memeriksa pertanyaan sebenar yang dilaksanakan pada pangkalan data, penyelesaian melibatkan pengelogan semua pertanyaan SQL. Dalam MySQL, ini boleh dicapai dengan mengubah suai my.cnf (atau my.ini dalam persekitaran Windows) dan menambah baris seperti:

log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]

Walau bagaimanapun, ini hanya boleh digunakan untuk tujuan penyahpepijatan dan bukan dalam persekitaran pengeluaran untuk mengelakkan kemerosotan prestasi.

Atas ialah kandungan terperinci ## Bagaimana untuk Memeriksa Pertanyaan Sebenar yang Dilaksanakan oleh PDO dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn