PHP를 사용하여 MySQL에서 정수 및 숫자 데이터 유형을 올바르게 검색하는 방법은 무엇입니까?
PHP를 사용하여 MySQL에서 정수 및 숫자 데이터 유형을 올바르게 검색하는 방법
PHP를 사용하여 MySQL 데이터베이스를 쿼리할 때 다음 사항을 확인하는 것이 중요합니다. 정수 및 숫자 데이터 유형은 문자열이 아닌 그대로 반환됩니다. 이는 데이터 무결성 및 다른 서비스와의 호환성을 위해 필수적입니다.
안타깝게도 PHP-MySQL 네이티브 드라이버는 기본적으로 모든 쿼리 결과를 문자열로 변환합니다. 이 문제는 구현 제한이라고 주장하는 사람도 있고 올바르지 않다고 주장하는 사람도 있어 많은 논쟁의 대상이 되어 왔습니다. 그러나 고려해야 할 핵심 요소는 사용되는 드라이버입니다.
해결책: MySQLnd 드라이버 사용
이 문제를 해결하려면 기본 드라이버에서 전환해야 합니다. MySQL 드라이버를 mysqlnd 드라이버로 변경합니다. mysqlnd 드라이버는 정수 및 숫자 유형의 올바른 반환을 지원합니다.
mysqlnd 설치 및 확인 방법
Ubuntu에서는 다음 명령을 사용하여 mysqlnd 드라이버를 설치할 수 있습니다.
sudo apt-get remove php5-mysql sudo apt-get install php5-mysqlnd sudo service apache2 restart
mysqlnd가 사용되고 있는지 확인하려면 php -i의 출력을 확인하세요. 이제 pdo_mysql 섹션에는 mysqlnd에 대한 참조가 포함되어야 합니다.
PDO 설정
또한 다음 PDO 설정이 올바르게 구성되었는지 확인하세요.
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);
돌아왔습니다 값
mysqlnd 드라이버가 사용 중이고 적절한 PDO 설정이 적용되면 쿼리 결과는 다음 규칙에 따라 반환됩니다.
- 부동 소수점 유형( FLOAT, DOUBLE)은 PHP 부동 소수점으로 반환됩니다.
- 정수 유형(INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT)는 PHP 정수로 반환됩니다.
- 고정 소수점 유형(DECIMAL, NUMERIC)은 PHP 문자열로 반환됩니다.
예
다음 예는 정수 및 숫자 데이터의 올바른 동작을 보여줍니다. 검색:
$pdo = new PDO(...); $stmt = $pdo->prepare('SELECT * FROM table'); $stmt->execute(); $result = $stmt->fetch(PDO::FETCH_OBJ); var_dump($result);
이렇게 하면 다음 속성을 가진 개체가 출력됩니다.
object(stdClass)[915] public 'integer_col' => int 1 public 'double_col' => float 1.55 public 'float_col' => float 1.5 public 'decimal_col' => string '1.20' (length=4) public 'bigint_col' => string '18446744073709551615' (length=20)
위 내용은 PHP를 사용하여 MySQL에서 정수 및 숫자 데이터 유형을 올바르게 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Alter Table 문을 사용하여 MySQL에서 테이블을 어떻게 변경합니까?

MySQL의 문제를 해결하는 방법 공유 라이브러리를 열 수 없습니다.

Linux에서 MySQL을 실행합니다 (Phpmyadmin이있는 Podman 컨테이너가 포함되지 않음)

인기있는 MySQL GUI 도구는 무엇입니까 (예 : MySQL Workbench, Phpmyadmin)?
