0

我们正在使用 Laravel 4 针对旧数据库开发一个新站点。

该数据库是只读的,我们无法对其进行转换。

我们有

'charset' => 'cp1251'

在连接中,但是当我们尝试通过 Blade 输出字符串时,我们得到

htmlentities(): Invalid multibyte sequence in argument

深入挖掘,我们看到:

{{{ $shopProduct->product->sname }}}

编译为:

<h2><?php echo e($shopProduct->product->sname); ?></h2>

在哪里

function e($value)
{
    return htmlentities($value, ENT_QUOTES, 'UTF-8', false);
}

有没有办法从 MySQL制作EloquentPDO获取非 UTF-8 编码 ( ) 并实际在模型中使用?cp1251UTF-8

注意:我们无法更改服务器上的数据库编码 - 这超出了我们的控制范围。

4

1 回答 1

2

将字符集设置为 utf8。

'charset' => 'utf8'
于 2013-07-09T13:41:35.740 回答