Rumah  >  Artikel  >  rangka kerja php  >  Cara menggunakan log masuk peratus kabur dalam thinkphp

Cara menggunakan log masuk peratus kabur dalam thinkphp

PHPz
PHPzasal
2023-05-26 12:57:37645semak imbas

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.

  1. Gunakan tanda peratus dalam kaedah like()

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".

  1. Escape tanda peratus menggunakan aksara melarikan diri

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.

  1. Gunakan kaedah escape() untuk melepaskan rentetan

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!

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