PDO 준비문 - 매개변수 이름에 콜론 사용
질문
PDO에서 일부 개발자는 이름이 지정된 매개변수 이름 앞에 콜론(:)을 사용합니다. 매개변수가 있지만 다른 매개변수는 생략됩니다. 두 접근 방식 모두 작동하지만 콜론 사용의 중요성에 대해 혼동이 있습니다.
TL;DR
콜론은 SQL 문자열에서 필수이지만 선택 명령문이나 바인딩을 실행할 때 매개변수.
설명
문(SQL 문자열)을 준비할 때:
- 콜론(:)을 매개변수 이름 앞에 사용해야 합니다. 열 이름과 매개변수 이름 사이의 모호성을 방지합니다. 예: INSERT INTO Table1 (column1, column2) VALUES (:column1, :column2)
문 실행 또는 매개변수 바인딩 시:
- 콜론(:)은 선택 사항입니다. PHP는 콜론이 생략되면 자동으로 추가합니다. 예: $insertRecord->execute(['column1' => $column1, 'column2' => $column2]);
PHP 소스 코드 분석
An PHP 소스 코드를 조사해 보면 다음과 같은 동작이 드러납니다.
- In pdo_sql_parser.c에서는 매개변수 이름의 첫 번째 문자만 콜론이 될 수 있습니다.
- pdo_stmt.c에서bindParam() 또는execute()의 매개변수 이름이 ':'으로 시작하지 않는 경우 콜론 자동으로 추가됩니다.
모범 사례
기술적으로 콜론 사용이 필수는 아니지만, IDE의 일관성, 가독성 및 검색 용이성을 위해 권장됩니다.
위 내용은 PDO 명명된 매개변수에서 콜론이 중요합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!