CakePHP返回?在查询MySQL中文字符时

时间:2017-07-08 11:15:45

标签: mysql cakephp encoding

我们开始为我们的应用程序添加中文语言支持。我们的DB Charset设置为UTF8,我可以从MySQL CLI成功查询并查看中文字符

但是,当我尝试使用CakePHP查询方法" findAll"时,该值返回为??而不是中文字符

我们在database.php中的数据库配置如下所示:

public $default = array(
                'datasource' => 'Database/Mysql',
                'persistent' => true,
                'host' => 'localhost',
                'login' => 'root',
                'password' => '******',
                'database' => '******',
                'prefix' => '******',
                'encoding' => 'utf8'
        );

此外,我们在core.php中设置了这一行:

Configure::write('App.encoding', 'UTF-8');

我们没有为此设置任何视图,我们正在使用REST API,因此我们主要只是做一个" echo"在Controller方法中,我们从DB获得的任何响应。

我还尝试创建一个测试文件并在其中编写此代码:

<?php echo '基本' ?>

它运作良好。

有关如何使其发挥作用的任何建议吗?

1 个答案:

答案 0 :(得分:1)

原来我需要安装未安装的php-mbstring 一旦我安装它并重新启动apache,它就像一个魅力