PDOStatement::bindParam() 매개변수 이름의 선택적 선행 콜론
PDOStatement::bindParam()에 대한 PHP 문서에는 매개변수가 다음과 같이 명시되어 있습니다. 명명된 자리 표시자의 식별자는 ":name" 형식이어야 합니다. 그러나 일부 사용자는 선행 콜론이 선택 사항인 것으로 나타났습니다.
콜론은 선택 사항입니까?
문서에 따르면 아니요, 콜론은 선택 사항이 아니어야 합니다. 생략. 선택적 콜론에 대한 명시적인 언급이 없다는 것은 이 동작이 공식적으로 지원되지 않으며 이에 의존해서는 안 된다는 것을 의미합니다.
하지만 잠깐만요, 작동합니다...
흥미롭게도 PHP 5.3.24(및 다른 버전)에서는 선행 콜론을 생략해도 실제로 작동합니다. 내부적으로 매개변수가 누락된 경우 매개변수에 콜론이 추가되기 때문입니다. 이 동작은 ext/pdo/pdo_stmt.c:363(PHP 5.3.24)의 소스 코드에서 발견됩니다.
의미
이 해결 방법이 현재 작동하는 동안 , 조심해서 사용해야 합니다. PHP의 향후 버전이나 PDO 동작의 변경으로 인해 이 기능이 중단될 수 있습니다. 따라서 문서를 준수하고 PDOStatement::bindParam()과 함께 명명된 자리 표시자를 사용할 때 항상 선행 콜론을 포함하는 것이 가장 좋습니다.
위 내용은 PDOStatement::bindParam() 매개변수 이름에서 선행 콜론은 선택 사항입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!