2009-10-23 6 views
0

Je souhaite que la requête 'SET NAMES utf8' soit exécutée avant toute autre requête. Mais, si je l'exécute au début de mon application, il force Zend_Db à se connecter à la base de données, même si je n'exécute aucune autre requête. Ce n'est pas cool: mon application traite beaucoup de requêtes sans aucune requête, n'utilisant que le cache. Comment demander à Zend_Db de lancer 'SET NAMES utf8' juste après la connexion?Requête zend_db lors de la connexion

Répondre

4

Bien sûr, passez simplement l'option 'charset' avec les paramètres de l'adaptateur. Vous pouvez le faire via Zend_Config ou dans le code:

$params = array(
    'host'   => '127.0.0.1', 
    'username'  => 'webuser', 
    'password'  => 'xxxxxxxx', 
    'dbname'   => 'test', 
    'charset'  => 'utf8' 
); 

$db = Zend_Db::factory('Pdo_Mysql', $params); 

Référence: http://framework.zend.com/manual/en/zend.db.html#zend.db.adapter.connecting.parameters

+0

Oh merci. Je vais écrire RTFM sur mon moniteur :) –

+1

Np - ce n'est pas explicitement couvert dans le manuel, mais une exigence commune à coup sûr! Plus de questions sur SO vont le rendre plus facile pour tout le monde :) –

Questions connexes