Ярлыки

.htaccess (4) тестирование (8) шаблоны проектирования (3) css (5) Debian (6) docker (2) Doctrine2 (6) Git (6) html (4) java (6) javascript (13) jquery (11) LFS (3) linux (23) mac os (4) mod_rewrite (2) MSSQL (4) MySQL (18) ORM Doctrine (17) patterns (3) PDO (3) perl (7) PHP (64) PHPUnit (8) Python (15) SEO (2) Silex (1) SimpleXML (1) SQL (14) ssh (4) Ubuntu (24) Yii1 (1) Zend Framework (19) ZendFramework2 (8)

воскресенье, 31 января 2010 г.

Продолжение про русский язык, кодировку utf8 и ORM Doctrine

На самом деле вероятно многие тоже сталкивались с проблемой русских заглавной буквы И и буквы ш, в кодировке utf8 c ними возникают проблемы. Речь идет про ORM Doctrine. В общем все решается так:
$manager = Doctrine_Manager::getInstance();
$manager->openConnection(DSN, 'doctrine');
$manager->setCharset("utf8");
$manager->setCollate("utf8_general_ci");
$manager->setAttribute('model_loading', 'conservative')
$conn = $manager->getConnection("doctrine");
// PDO
$dbh = $conn->getDbh();

$sql = "SET character_set_results = 'utf8', character_set_client = 'utf8',
character_set_connection = 'utf8', character_set_database = 'utf8',
character_set_server = 'utf8'";

// аналогично
// $sql = "SET NAMES 'utf8'";

$dbh->query($sql);

6 комментариев: