Laravel和MSSQL不是UTF8字符集

时间:2018-03-06 07:43:42

标签: character-encoding vagrant laravel-5.5 sqlsrv

所以我有MSSQL数据库,我可以连接,但有些字符集显示为"����"符号。

Laravel数据库配置(我使用Laravel版本5.5.32 + php 7.2):

   'driver' => 'sqlsrv',
    'host' => env('MS_DB_HOST', 'localhost'),
    'port' => env('MS_DB_PORT', '1433'),
    'database' => env('MS_DB_DATABASE', 'forge'),
    'username' => env('MS_DB_USERNAME', 'forge'),
    'password' => env('MS_DB_PASSWORD', ''),
    'charset' => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix' => '',
    'strict' => false,
    'engine' => null,

我使用vagrant连接到MSSQL我用命令安装了驱动程序:

 apt install php7.2-sybase

使用cp1257编码的MSSQL数据库(Windows-1257) (我做了那个查询以找出它):

SELECT DEFAULT_CHARACTER_SET_NAME FROM information_schema.SCHEMATA;

我无法对MSSQL(它的旧版本)进行任何更改,但可以对vagrant / laravel进行任何更改。我试图在database.php中更改字符集,我试图将结果转换为UTF8,但是Laravel中显示的响应总是带有�符号。

任何想法如何获得正确的编码?

0 个答案:

没有答案