首頁 > 資料庫 > mysql教程 > 如何在PDO中正確使用LIKE和bindParam來匹配以特定字元開頭的使用者名稱?

如何在PDO中正確使用LIKE和bindParam來匹配以特定字元開頭的使用者名稱?

Patricia Arquette
發布: 2024-11-14 13:28:02
原創
440 人瀏覽過

How to Correctly Use LIKE and bindParam in PDO to Match Usernames Starting with a Specific Character?

在PDO中使用LIKE和bindParam匹配以字元開頭的使用者名稱

在PDO中使用bindParam進行資料庫查詢時,您可能會進行查詢會遇到這樣的情況:需要利用LIKE 運算子來搜尋資料的部分匹配。具體來說,您可能想要檢索以特定字元開頭的使用者名,在本例中表示為“a”。

要正確使用 LIKE 和 bindParam 實現此目的,請避免使用內部單引號將 bindParam 佔位符括起來。正確的語法是:

$term = "a%";
登入後複製

程式碼在嘗試執行 a%' 作為通配符條件而不是 a% 時出現錯誤。

請記住,bindParam 確保所有字串值都是傳遞給 SQL 語句時適當引用。因此,不需要將佔位符括在引號中,並且會導致不正確的匹配。

更正後的查詢應如下所示:

$term = "a%";

$sql = "SELECT username 
        FROM `user` 
        WHERE username LIKE :term 
        LIMIT 10";      

$stmt = $core->dbh->prepare($sql);
$stmt->bindParam(':term', $term, PDO::PARAM_STR);
$stmt->execute();
$data = $stmt->fetchAll();
登入後複製

此程式碼將成功檢索以透過在 bindParam 用法中正確應用 LIKE 運算子來識別字元「a」。

以上是如何在PDO中正確使用LIKE和bindParam來匹配以特定字元開頭的使用者名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板