exec('SET NAMES utf8');"을 통해 데이터베이스 인코딩을 설정합니다. 2. 인스턴스화된 PDO의 네 번째 매개변수에 "MYSQL_ATTR_INIT_COMMAND" 속성을 추가합니다."/> exec('SET NAMES utf8');"을 통해 데이터베이스 인코딩을 설정합니다. 2. 인스턴스화된 PDO의 네 번째 매개변수에 "MYSQL_ATTR_INIT_COMMAND" 속성을 추가합니다.">

 >  기사  >  백엔드 개발  >  PHP pdo에서 인코딩을 설정하는 방법

PHP pdo에서 인코딩을 설정하는 방법

藏色散人
藏色散人원래의
2021-05-25 09:08:482901검색

php pdo의 인코딩을 설정하는 방법: 1. "$_pdo->exec('SET NAMES utf8');"를 통해 데이터베이스 인코딩을 설정합니다. 2. 인스턴스화된 PDO의 네 번째 매개변수에 "MYSQL_ATTR_INIT_COMMAND" 속성을 추가합니다. .

PHP pdo에서 인코딩을 설정하는 방법

이 글의 운영 환경: Windows 7 시스템, PHP 버전 5.2.4, DELL G3 컴퓨터

PDO를 사용하여 데이터베이스를 운영하는 PHP의 잘못된 문제에 대한 솔루션, PHP pdo 설정 인코딩:

때 PDO 연결을 이용하여 데이터베이스를 운영하는데, 가끔 데이터베이스에 저장된 한자가 깨져 보이는 현상이 나타납니다. 파일이 UTF-8 형식인 경우 해결 방법은 다음과 같습니다.

(1) 인스턴스화된 개체는 query() 메서드 또는 exec() 메서드를 직접 실행합니다.

<?php
  class DB {
    static public function getDB() {
      try {
        $_opts_values = array(PDO::ATTR_PERSISTENT=>true,PDO::ATTR_ERRMODE=>2);
        $_pdo = new PDO(DB_DSN, DB_NAME, DB_PASS, $_opts_values);
      } catch (PDOException $e) {
        exit(&#39;数据库连接错误!错误信息:&#39;.$e->getMessage());
      }
      $_pdo->query("SET NAMES utf8"); // $_pdo->exec(&#39;SET NAMES utf8&#39;); //设置数据库编码,两种方法都可以
      return $_pdo;
    }
  }
?>

(2) 인스턴스화된 개체의 네 번째 매개 변수를 추가합니다. PDO MYSQL_ATTR_INIT_COMMAND 속성:

<?php
  class DB {
    static public function getDB() {
      try {
        $_opts_values = array(PDO::ATTR_PERSISTENT=>true,PDO::ATTR_ERRMODE=>2,PDO::MYSQL_ATTR_INIT_COMMAND=>&#39;SET NAMES utf8&#39;);
        $_pdo = new PDO(DB_DSN, DB_NAME, DB_PASS, $_opts_values);
      } catch (PDOException $e) {
        exit(&#39;数据库连接错误!错误信息:&#39;.$e->getMessage());
      }
      return $_pdo;
    }
  }
?>

참고: 위의 방법은 테스트되었습니다.

【추천 학습: PHP 비디오 튜토리얼

위 내용은 PHP pdo에서 인코딩을 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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