>  기사  >  데이터 베이스  >  MySQL에서 PDO를 사용할 때 UTF-8로 인코딩된 데이터가 횡설수설로 나타나는 이유는 무엇입니까?

MySQL에서 PDO를 사용할 때 UTF-8로 인코딩된 데이터가 횡설수설로 나타나는 이유는 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-04 13:17:011034검색

Why does my UTF-8 encoded data appear as gibberish when using PDO with MySQL?

PDO MySQL UTF-8 인코딩 문제

문제: PHP, UTF에서 MySQL 데이터베이스와 함께 PDO를 활용하는 경우 -8 데이터베이스에 삽입된 인코딩된 데이터가 횡설수설로 나타납니다.

가능한 원인:

  • 데이터베이스 연결 설정 중 문자 집합 및 인코딩 설정이 잘못 처리되었습니다.

해결책:

  • 데이터베이스 연결 초기화 시 올바른 문자 집합과 인코딩 구성을 확인하세요. 다음 구문을 사용하십시오.
<code class="php">$pdo = new PDO( 
    'mysql:host=hostname;dbname=defaultDbName', 
    'username', 
    'password', 
    array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8") 
); </code>

이 줄은 PDO 연결에서 UTF-8 인코딩을 강제하고 인코딩 문제를 해결합니다.

경고: 이 해결 방법 PHP 버전 5.3.5 이하용입니다. PHP 버전 5.3.6 이상인 경우 다른 곳에서 제공되는 대체 솔루션을 참조하세요.

위 내용은 MySQL에서 PDO를 사용할 때 UTF-8로 인코딩된 데이터가 횡설수설로 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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