"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > PDOStatement::bindParam()의 선행 콜론은 정말로 선택 사항입니까?

PDOStatement::bindParam()의 선행 콜론은 정말로 선택 사항입니까?

2024년 11월 17일에 게시됨
검색:654

Is the Leading Colon in PDOStatement::bindParam() Truly Optional?

PDOStatement::bindParam()의 매개변수 이름에 대한 선행 콜론은 정말 선택 사항입니까?

PDOStatement::bindParam()을 사용하면 다음을 수행할 수 있습니다. :name과 같은 자리 표시자를 사용하여 쿼리에 명명된 매개 변수를 지정합니다. 문서에는 명명된 자리 표시자의 매개변수 식별자가 :name 형식을 사용해야 한다고 명시되어 있습니다. 그러나 :name과 name 모두 문제 없이 사용될 수 있다는 관찰이 있었습니다.

문서 및 지원 기능

PDOStatement::bindParam() 문서에서는 명명된 매개변수(:name)에 콜론 접두사를 사용하는 것을 명시적으로 언급합니다. 이는 콜론을 사용하지 않는 것이 공식적으로 지원되지 않음을 의미합니다.

내부 PHP 동작

문서에도 불구하고 PHP는 콜론이 누락된 경우 내부적으로 매개변수 이름에 콜론을 추가합니다. 이 동작은 PHP 소스 코드(ext/pdo/pdo_stmt.c:363)에서 관찰할 수 있습니다. 이는 콜론 없이 이름을 사용하면 PHP가 자동으로 이름을 추가한다는 의미입니다.

신뢰성 및 권장 사항

이 내부 동작은 편리하지만 다음 사항에 유의하는 것이 중요합니다. 공식 문서에서는 지원되지 않습니다. 따라서 이 동작에 의존하는 것은 바람직하지 않으며 PDOStatement::bindParam()을 사용할 때 명명된 매개 변수에 항상 콜론 접두사를 사용하는 것이 좋습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3