Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menggunakan Operator LIKE dengan Parameter dalam PDO?

Bagaimana untuk Menggunakan Operator LIKE dengan Parameter dalam PDO?

Mary-Kate Olsen
Lepaskan: 2024-11-27 09:26:11
asal
834 orang telah melayarinya

How to Use LIKE Operator with Parameters in PDO?

Laksanakan LIKE Query dalam PDO

Dalam PDO, apabila menggunakan operator LIKE, adalah penting untuk memasukkan tanda % dalam parameter, bukan dalam pertanyaan itu sendiri. Ini kerana kenyataan yang disediakan PDO merangkum nilai dalam petikan, yang boleh mengganggu % pemegang tempat.

Sebagai contoh, pertimbangkan pertanyaan berikut:

$query = "SELECT * FROM tbl WHERE address LIKE '%?%' OR address LIKE '%?%'";
$params = array($var1, $var2);
Salin selepas log masuk

Apabila pertanyaan ini disediakan, % tanda-tanda akan dirangkumkan dalam petikan, menghasilkan pertanyaan seperti ini:

SELECT * FROM tbl WHERE address LIKE '%"foo"%' OR address LIKE '%"bar"%'
Salin selepas log masuk

Oleh itu, pertanyaan tidak akan mengembalikan sebarang hasil kerana petikan berganda mengganggu kefungsian pengendali LIKE yang dimaksudkan.

Untuk membetulkan isu ini, tanda % harus disertakan dalam parameter sebaliknya:

$query = "SELECT * FROM tbl WHERE address LIKE ? OR address LIKE ?";
$params = array("%$var1%", "%$var2%");
Salin selepas log masuk

Dengan pengubahsuaian ini, pertanyaan yang disediakan akan mencari dengan betul alamat yang mengandungi $var1 atau $var2.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Operator LIKE dengan Parameter dalam PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan