Apabila menggunakan ThinkPHP untuk pertanyaan data kabur, selalunya perlu menggunakan tanda peratus (%) untuk pemadanan kad bebas untuk mencapai carian yang lebih tepat. Artikel ini akan memperkenalkan cara menggunakan tanda peratus dengan betul untuk melaksanakan pertanyaan kabur.
Apabila menggunakan kaedah like() untuk pertanyaan kabur, anda perlu menghantar tanda peratus sebagai parameter kepada kaedah tersebut. Contohnya, jika anda ingin menanyakan maklumat pengguna untuk "nama pengguna bermula dengan 'a'", anda boleh menggunakan kod berikut:
$userList = Db::table('user')->where('username', 'like', 'a%')->select();
Dalam contoh ini, kami menghantar "a%" kepada kaedah like() , menunjukkan bahawa kami Untuk menanyakan maklumat semua pengguna yang nama penggunanya bermula dengan "a".
Jika kita perlu benar-benar menanyakan data yang mengandungi aksara tanda peratus, kita perlu melarikan diri menggunakan aksara melarikan diri , jika tidak ralat pernyataan SQL akan berlaku. Dalam ThinkPHP, gunakan sengkang terbalik "" untuk melepaskan tanda peratus.
Sebagai contoh, jika kami ingin menanyakan maklumat pengguna yang mengandungi rentetan "%abc%", kami boleh menggunakan kod berikut:
$userList = Db::table('user')->where('username', 'like', '%abc%')->select();
Dalam contoh ini, kami menggunakan garis miring ke belakang untuk tanda peratus Escaped untuk mengelakkan ralat pernyataan SQL.
Jika kita ingin menanyakan data yang mengandungi aksara tanda peratus, tetapi tidak mahu melepaskan peratus secara manual setiap kali Tidak., anda boleh menggunakan kaedah escape() untuk melepaskan rentetan secara automatik.
Sebagai contoh, jika kami ingin menanyakan maklumat pengguna yang mengandungi rentetan "%abc%", kami boleh menggunakan kod berikut:
$keyword = '%abc%'; $escapedKeyword = Db::escapeLikeStr($keyword); $userList = Db::table('user')->where('username', 'like', $escapedKeyword)->select();
Dalam contoh ini, kami menggunakan kaedah escape() hingga $ Aksara tanda peratus dalam kata kunci secara automatik dilarikan ke bentuk "%", dengan itu mengelakkan operasi membosankan untuk melarikan diri secara manual.
Ringkasan
Apabila menggunakan ThinkPHP untuk pertanyaan kabur, adalah sangat penting untuk menggunakan tanda peratus dengan betul. Melalui pengenalan di atas, kita boleh menguasai tiga kaedah menggunakan tanda peratus, iaitu menggunakan tanda peratus dalam kaedah like(), menggunakan aksara melarikan diri untuk melepaskan tanda peratus, dan menggunakan kaedah melarikan diri() untuk melepaskan rentetan secara automatik. Semoga artikel ini bermanfaat kepada anda.
Atas ialah kandungan terperinci Cara menggunakan log masuk peratus kabur dalam thinkphp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!