Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menggunakan Pertanyaan Berparameter dengan Pernyataan LIKE dalam PDO dengan betul?

Bagaimana untuk Menggunakan Pertanyaan Berparameter dengan Pernyataan LIKE dalam PDO dengan betul?

Linda Hamilton
Linda Hamiltonasal
2024-12-21 01:22:17664semak imbas

How to Correctly Use Parameterized Queries with LIKE Statements in PDO?

Menggunakan Pertanyaan Berparameter dengan Pernyataan LIKE Menggunakan PDO

Apabila bekerja dengan pertanyaan berparameter yang menggabungkan pernyataan LIKE, pendekatan yang betul ialah menggunakan aksara pemegang tempat dalam pertanyaan itu sendiri. Ini memastikan bahawa nilai input dilayan dengan betul sebagai parameter dan bukannya sebahagian daripada rentetan literal.

Dalam percubaan awal, menggunakan '?%' sebagai aksara pemegang tempat adalah salah. Sebaliknya, watak pemegang tempat seperti '?' harus digunakan dan nilai input sebenar hendaklah dilampirkan dengan aksara kad bebas semasa melaksanakan pertanyaan.

Kod yang disemak di bawah menunjukkan penggunaan yang betul:

$query = $database->prepare('SELECT * FROM table WHERE column LIKE ?');
$query->execute(array('value%'));

while ($results = $query->fetch()) {
    echo $results['column'];
}

Dengan menggunakan aksara pemegang tempat dan menambahkan aksara kad bebas pada nilai input semasa pelaksanaan, penyataan LIKE berfungsi seperti yang dimaksudkan, dan pertanyaan mendapatkan semula yang dikehendaki. rekod.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Pertanyaan Berparameter dengan Pernyataan LIKE dalam PDO dengan betul?. 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