ZF FAQ: установка кодировки при подключении к БД
Привет!
Вопрос: Как установить кодировку utf8 при подключении к базе данных?
В версии Zend Framework 1.8, если вы используете Zend_Application, кодировка устанавливается через конфигурационный файл.
PHP:
-
[production]
-
resources.db.adapter = "pdo_mysql"
-
resources.db.params.host = "localhost"
-
resources.db.params.username = "YOURUSER"
-
resources.db.params.password = "YOURPASS"
-
resources.db.params.dbname = "YOURDB"
-
resources.db.params.charset = utf8
-
resources.db.isDefaultTableAdapter = true
В версии 1.7, кодировку можно установить при явном подключении к БД или при использовании конфигурационного файла, ниже приведен пример как установить кодировку явно.
PHP:
-
$config = Zend_Registry::get('dbConfig');
-
-
$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());
-
Zend_Db_Table::setDefaultAdapter($db);
-
Zend_Registry::getInstance()->set('db', $db);
-
-
$db->query("set names utf8");
-
$db->query("set time_zone = '+0:00'");

