Problème d'encodage UTF-8 avec Zend_Db Mysqli
Bonjour,
J'ai un drôle de problème avec une application Zend Framework et l'encodage de caractère. J'ai une base de données utilisant 'utf8_general_ci' et je récupère une information dans ma page qui est également en UTF-8.
Au lieu d'afficher sécurité, il affiche s�curit�.
La détection de l'encodage de la chaine me dit bien que c'est de l'UTF-8 et pourtant, ça ne marche pas :
Code:
var_dump(mb_detect_encoding($var), $var);
Citation:
string 'UTF-8' (length=5)
string 's�curit�' (length=10)
J'ai configuré mon projet de la manière suivante :
Code:
1 2 3
| database.adapter = "Mysqli"
database.params.charset = "UTF8"
database.params.host = "127.0.0.1" |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
protected function _initDb()
{
// Paramètres de base de données
$database_config = $this->getOption('database');
// Création de la connexion en base de donnée à partir du config
$db = Zend_Db::factory($database_config['adapter'],
$database_config['params']);
// Enregistrement dans le registre pour une utilisation ultérieure
Zend_Registry::set('db',$db);
return $db;
} |
Code:
1 2 3 4 5 6
|
public function maFonction(){
$sql = $this->db->select()->from('maTable');
$stmt = $this->db->query($sql);
return $stmt->fetchAll();
} |
Je sèche un peu pour le coup, avez-vous une idée ?
Merci d'avance ;)