PDO에서 LIKE 및 binParam을 사용하여 문자로 시작하는 사용자 이름 일치
PDO와 함께 findParam을 사용하여 데이터베이스 쿼리를 수행할 때 다음과 같은 시나리오가 발생할 수 있습니다. 데이터의 부분 일치를 검색하려면 LIKE 연산자를 사용해야 합니다. 특히, 이 경우 'a'로 표시되는 특정 문자로 시작하는 사용자 이름을 검색해야 할 수 있습니다.
LIKE 및bindParam을 올바르게 사용하여 이를 수행하려면 내부 작은따옴표로 내부 작은따옴표로bindParam 자리 표시자를 묶지 마십시오. 올바른 구문은 다음과 같습니다.
$term = "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 및 binParam을 올바르게 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!