Warm tip: This article is reproduced from serverfault.com, please click

unicode-Laravel 5.1 UTF-8保存到数据库

(unicode - Laravel 5.1 utf-8 saving to database)

发布于 2015-09-30 13:17:59

我正在尝试将记录保存到数据库。当从输入中获取值并将其保存到数据库时,没有问题,例如:

$ request-> input('name')是值为'سلام'的输入

$provider->name = $request->input('name');
$provider->copyright_email = 'test@yahoo.com';
$provider->save();

但是当我尝试从我的控制器给值时,出现了问题。名称将保存“?” 进入数据库:

$provider->name = 'سلام';
$provider->copyright_email = 'test@yahoo.com';
$provider->save();

我已经将此代码添加到config / database.php中:

'charset' => 'utf8',
'collation' => 'utf8_persian_ci',
Questioner
A. Najafi
Viewed
11
Ihab Shoully 2015-10-02 22:57:46
  1. 将你的数据库文件配置为 utf8_unicode_ci

检查文件config/database.php

'charset'   => 'utf8',
'collation' => 'utf8_unicode_ci',
  1. 确保你的Mysql数据库设置为,utf8而MySQL的数据库utf8mb4更好

  2. 确保你的文件字符设置为 UTF-8 without BOM

我个人认为你在IDE中遇到问题,请尝试使用Atom。