Rumah >pangkalan data >tutorial mysql >Bolehkah Penyata Disediakan PDO Menggunakan Kad Liar dengan Klausa LIKE?

Bolehkah Penyata Disediakan PDO Menggunakan Kad Liar dengan Klausa LIKE?

Barbara Streisand
Barbara Streisandasal
2024-11-28 08:40:11958semak imbas

Can PDO Prepared Statements Use Wildcards with LIKE Clauses?

Penggunaan Wildcard dalam Penyata Disediakan PDO

Siasatan ini mencari penjelasan tentang kebolehlaksanaan menggunakan wildcard, khususnya % untuk klausa LIKE, dalam PDO kenyataan yang disediakan.

Pada mulanya, percubaan yang tidak berjaya adalah dibuat menggunakan bindParam. Walau bagaimanapun, kejayaan dicapai apabila bertukar kepada bindValue seperti berikut:

$stmt = $dbh->prepare("SELECT * FROM `gc_users` WHERE `name` LIKE :name");
$stmt->bindValue(':name', '%' . $name . '%');
$stmt->execute();

Selain itu, kaedah bindParam juga boleh digunakan dalam senario ini dengan pengubahsuaian kecil:

$name = "%$name%";
$query = $dbh->prepare("SELECT * FROM `gc_users` WHERE `name` like :name");
$query->bindParam(':name', $name);
$query->execute();

Atas ialah kandungan terperinci Bolehkah Penyata Disediakan PDO Menggunakan Kad Liar dengan Klausa LIKE?. 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