>백엔드 개발 >PHP 튜토리얼 >PDO가 MySQL에서 숫자 대신 문자열을 반환하는 이유는 무엇이며 어떻게 해결할 수 있습니까?

PDO가 MySQL에서 숫자 대신 문자열을 반환하는 이유는 무엇이며 어떻게 해결할 수 있습니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-31 14:35:09349검색

Why Does PDO Return Strings Instead of Numbers from MySQL, and How Can I Fix It?

PDO: 숫자 MySQL 데이터 검색

PDO를 사용하여 MySQL에서 정수 값을 가져올 때 실제 숫자가 아닌 문자열 표현을 만나는 것이 일반적입니다. 숫자 데이터. 이 문제를 해결하려면 PDO::ATTR_STRINGIFY_FETCHES 속성을 사용하는 것이 좋습니다. 그러나 이 속성은 MySQL 드라이버에 적용할 수 없습니다.

대신 준비된 명령문 에뮬레이션을 비활성화하여 MySQL 기본 드라이버가 기본 데이터 유형을 반환하도록 할 수 있습니다. 이는 다음을 통해 달성할 수 있습니다.

new PDO($dsn, $user, $pass, array(
    PDO::ATTR_EMULATE_PREPARES => false
))

숫자 값에 대한 문자열을 수신하는 것은 이상해 보일 수 있지만 MySQL 드라이버의 기본 동작으로 인해 흔히 발생합니다. 준비된 명령문 에뮬레이션을 수정하면 숫자 값이 예상대로 검색되도록 할 수 있습니다.

위 내용은 PDO가 MySQL에서 숫자 대신 문자열을 반환하는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.