Mig*_*ens 7 php laravel eloquent
我正在使用Eloquent将一个新人保存到我的数据库中.人名包含特殊字符é,但不提交.这是我的步骤和结果.
echo Input::get('firstname'); // Miguél
Run Code Online (Sandbox Code Playgroud)
这给了我这个
当我开始使用雄辩时,会发生以下情况.
$person = new Person();
echo $person->firstname = Input::get('firstname');
Run Code Online (Sandbox Code Playgroud)
这产生以下结果
知道可能出了什么问题吗?这些是laravel中的配置设置
这是我在phpmyadmin中的数据库
谢谢
Mar*_*łek 11
我不认为它与数据库有任何共同之处.
当你使用:
$person = new Person();
echo $person->firstname = Input::get('firstname');
Run Code Online (Sandbox Code Playgroud)
你不在这里使用数据库.您只需将属性分配给Person类(可能使用Eloquent),但您不会将任何内容放入数据库并从数据库中获取任何内容,因此编码问题不可能与数据库本身有任何共同之处
在我看来潜在的问题 - 你已经在Person
类中为firstname
属性定义了mutator,因为你有小写的(当你从大写字母输入它时大写字母)所以你可能会使用类似的函数strtolower
,你应该使用mb_strtolower
转换UTF-8字符串而不用一个问题.