Développement d'applications web, Zend framework, iPhone, Mac os X et Wordpress

Configurer Zend Db pour utiliser l’encodage UTF-8

composant zend frameworkVoici deux solutions qui vous permettront d’interagir avec votre base de données MySQL directement en UTF-8 :

  1. La première concerne la configuration dans votre application.ini dans la partie consacrée à Zend DB.
  2. La deuxième solution est de créer une fonction _initDb() dans le Bootstrap directement.


Voici un exemple de configuration d’un fichier application.ini. La dernière ligne est la plus importante. C’est grâce à elle que les dialogues avec la base de données se feront en UTF-8

; initialize database
resources.db.adapter = "PDO_MYSQL"
resources.db.params.host = "localhost"
resources.db.params.username = "username"
resources.db.params.password = "password"
resources.db.params.dbname = "dbname"
#resources.db.params.charset = "UTF-8"
resources.db.params.date_format = "YYYY-MM-ddTHH:mm:ss"
resources.db.isDefaultTableAdapter = true
<strong>resources.db.params.driver_options.1002 = "SET NAMES utf8"</strong>

Ce deuxième exemple revient à faire la même chose que dans l’exemple suivant sauf que cette fois nous sommes dans le bootstrap.

protected function _initDb()
{
    $pdoParams = array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8;');

    $params = array(
    'host' => 'localhost',
    'username' => 'username',
    'password' => 'password',
    'dbname' => 'dbname',
    'driver_options' => $pdoParams
);
    try {
$db = Zend_Db::factory('PDO_MYSQL', $params);
Zend_Db_Table_Abstract::setDefaultAdapter($db);
} catch (Exception $e) {        exit($e->getMessage());
}

Zend_Registry::set('dbAdapter', $db);
}?>

Plugin flash manquant

Aucun article en relation.

Cet article a été publié dans Zend Framework avec les mots-clefs : , , , , , , . Bookmarker le permalien. Laisser un commentaire ou faire un trackback : URL de trackback.

Un commentaire

  1. lsga
    Le 28 mars 2011 à 14 h 38 min | Permalien

    Sinon, en beaucoup plus simple, dans application.ini:

    resources.db.params.charset = « UTF8″

    sans traits d’union et tout va bien…

Laisser un commentaire

Votre e-mail ne sera jamais publié ni communiqué. Les champs obligatoires sont indiqués par *

*
*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

  • Plugin flash manquant