Latest News
- Visão Ágil – Community Journal 01
- Cast entre objetos PHP
- PDO e MySQL com UTF-8
- PHP – Criando e tratando exceptions
- Encontro Ágil 2008
- PHP Conference 2008
- Era uma vez…
- On duplicate key update
- SCRUM – Primeiros passos
- Google developer day 2008
Categorias
- AJAX/XAJAX
- Artigos
- Banco de Dados
- Engenharia de Software
- Fun
- geral
- Metodologias
- PHP
- Smarty/Templates
- Uncategorized
Arquivo
PDO e MySQL com UTF-8
Posted by cristianmedeiros
Se você esta usando PDO, esta tendo dificuldades com UTF-8 no seu MySQL, mesmo com tudo setado para UTF-8, você pode tentar isso:
$pdo = new PDO(
‘mysql:host=localhost;dbname=nomedobanco’,
"user",
"pass",
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
O último parametro do construtor do PDO é um array com as opções específicas do driver, no caso, do driver od MySQL. Este parametro é alimentado no velho estilo "array" chave=>valor.
Observem que o parametro (PDO::MYSQL_ATTR_INIT_COMMAND) não se trata de uma configuração de charset, mas sim de um comando que é executado todas as vezes que você conecta no banco. Neste caso, todas as vezes que ele se conecta no banco, ele executa a query "SET NAMES utf8" (acho que é específica do MySQL) que diz para o MySQL utilizar UTF-8 como charset para nossa conexão.
Para saber mais:
- PDO e BEAN no PHP
- MySQL “Connection Character Sets and Collation” documentation
- PDO constructor documentation
- PDO MySQL driver documentation
Fonte:
http://www.laszlo.nu/post/34159352/how-to-use-utf-8-with-mysql-and-php-data-objects-pdo
Tags BlogBlogs: php, pdo, mysql, utf8, unicode
Leave a Reply



