Heim >Backend-Entwicklung >PHP-Tutorial >PHP verwendet PDO, um verstümmelte Problemlösungen und Beispiele in der Datenbank zu betreiben

PHP verwendet PDO, um verstümmelte Problemlösungen und Beispiele in der Datenbank zu betreiben

墨辰丷
墨辰丷Original
2018-06-04 09:56:351479Durchsuche

Dieser Artikel stellt hauptsächlich die Lösung für das Problem mit verstümmeltem Code vor, wenn PHP PDO zum Betreiben der Datenbank verwendet. Er analysiert die Codierungseinstellungen und Attributeinstellungen, um das Problem mit verstümmeltem Code anhand von Beispielen zu lösen 🎜>Bei Verwendung von PDO Beim Herstellen einer Verbindung zur Datenbank scheint es manchmal so zu sein, dass die in der Datenbank gespeicherten chinesischen Schriftzeichen verstümmelt sind. Wenn die Datei im UTF-8-Format vorliegt, lautet die Lösung wie folgt:


(1) Das instanziierte Objekt führt direkt die Methode query() oder exec() aus:

<?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) Fügen Sie das Attribut MYSQL_ATTR_INIT_COMMAND zum vierten Parameter des instanziierten PDO hinzu:

<?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;
    }
  }
?>

Zusammenfassung: Das Obige ist dies. Der gesamte Inhalt dieses Artikels soll für das Studium aller hilfreich sein.

Verwandte Empfehlungen:

Grundlegender Einstieg in PHP-reguläre Ausdrücke


php UEditor Baidu-Editor-Freigabe von Installations- und Verwendungsmethoden

Installationsmethode und detailliertes Tutorial der Swoole-Erweiterung in PHP


Das obige ist der detaillierte Inhalt vonPHP verwendet PDO, um verstümmelte Problemlösungen und Beispiele in der Datenbank zu betreiben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn