Pie*_*Ftn 5 php encoding laravel
我在部署 Laravel 网站(在本地正常工作)后遇到问题。\n某些文本编码不正确,\n例如:Jo\xc3\xabl 应该是 Jo\xc3\x83\xc2\xabl
\n\n一些信息 :
\n\n并非所有视图都会受到影响,某些变量在一个视图中正确呈现,但在另一个视图上被破坏(这让我认为这不是 mysql 问题)
我的 json 响应不再工作(格式错误的 UTF-8 字符,可能编码错误),这让我认为这一定是 mysql 问题...)
我已经尝试将其放入我的 AppServiceProvider 中\\Blade::setEchoFormat('e(utf8_encode(%s))');
我的 strftime 也不起作用,但可以使用 php 的 utf8_encode 函数解决,该函数不适用于我的其他变量。 \n例如,如果 $c->name 给出 Jo\xc3\x83\xc2\xabl ,则 utf8_encode($c ->name) 还给出 Jo\xc3\x83\xc2\xabl
在 config/database.php 中,字符集设置为 utf8mb4,集合设置为 utf8mb4_unicode_ci
您有什么想法可以解决我的问题吗?
\n只需在服务提供者 AppServiceProvider 中执行此操作并将其放入 boot 方法中
Blade::setEchoFormat('e(utf8_encode(%s))');
Run Code Online (Sandbox Code Playgroud)
一般来说,坚持使用 UTF-8 可以让生活变得简单。
从其他地方复制并粘贴到代码中时要非常小心 - 基本上总是通过 Notepad++ 并使用其转换为 UTF-8(不含 BOM),然后再复制并粘贴到代码中。
然后确保您的所有视图(包括错误页面)都具有
<meta charset="UTF-8">
Run Code Online (Sandbox Code Playgroud)
或者如果您使用的是 HTML4,请执行以下操作
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
Run Code Online (Sandbox Code Playgroud)
希望对你有帮助
| 归档时间: |
|
| 查看次数: |
13763 次 |
| 最近记录: |