Mysql 使用CakePHP的UTF-8输出
我正在尝试将一些Excel数据移动到MySQL,但在编码方面遇到了问题 我所做的:Mysql 使用CakePHP的UTF-8输出,mysql,html,cakephp,encoding,Mysql,Html,Cakephp,Encoding,我正在尝试将一些Excel数据移动到MySQL,但在编码方面遇到了问题 我所做的: 从OpenOffice 3.1以csv格式导出数据(utf-8编码) 通过文件上载导入到phpMyAdmin(表编码:“utf8\U unicode\U ci”) 在phpMyAdmin的查看模式下,数据显示正确(使用utf-8作为字符集): 当我试图在我的网页上显示数据时,我得到一个带有问号的哈希 系统信息 我试图在页面上使用的语言: 德文 MySQL客户端版本:5.0.32 我的操作系统:MAC OS
当我试图在我的网页上显示数据时,我得到一个带有问号的哈希
系统信息
- 我试图在页面上使用的语言: 德文
- MySQL客户端版本:5.0.32
- 我的操作系统:MAC OS X 10.5.7
- 服务器脚本:CakePHP v1.2.3.8166
Benedikt您是否正在使用mysql设置与UTF-8的连接
SET NAMES 'UTF-8'
我也有类似的症状,我的解决办法是
'encoding' => 'UTF8'
要配置/database.php,我遇到了与此类似的问题。大多数东西都是“开箱即用”正确设置的,但我只想指出以下我觉得有用的东西。。。我在从dev迁移到live时遇到了这个问题: 您需要有匹配的数据库编码(需要检查2项)以及视图编码
- 数据库编码已在架构中设置李>
- 可以手动强制Cake PHP从数据库中获得一种编码类型
- 然后,PHP还需要为视图调用正确的编码
'encoding' => 'utf8'
最后,视图需要选择要显示的HTML的正确版本。这将从文件app\Config\core.php(大约第82行)写入模板中
一旦所有三个部分都被更改,您应该有一个一致的字符集,因此显示
希望这能帮助任何还在寻找这个的人
$conn1 = mysqli_connect($this->db_host, $this->db_username, $this->db_password, $this->db_name);
添加此连接
mysqli_set_字符集($conn1,“utf8mb4”)代码>不要错过,这一行存在于默认配置中。但是它被评论掉了。非常感谢。您保存的meThis是保存我的应用程序的最正确、最简单和最有效的解决方案。有一个包含ASCII编码记录的完整表,这一行为我节省了大量的
utf8\u encode()
callsQuestion与CakPp有关。我知道@Sehdev,所以在某些情况下,当我们在配置文件中设置“encoding”=>utf8时,它不起作用。所以你可以用这个。
Configure::write('App.encoding', 'UTF-8');
$conn1 = mysqli_connect($this->db_host, $this->db_username, $this->db_password, $this->db_name);