dsa88886666 2018-08-01 01:47
浏览 55
已采纳

Yii 2没有从mysql数据库渲染表情符号

I have a Yii 2 app and emojis are not rendering when I grab data from the database. It is storing inside my database fine as an emoji, but not in my view. It's returning as a ? character.

In my head I have

<meta charset="utf-8">

Am I missing something?

SOLUTION

Go into your db config file (where you set up your db name and password) and change charset to utf8mb4

  • 写回答

1条回答 默认 最新

  • doutao1282 2018-08-01 02:19
    关注

    Change the collation of the connection to the utf8mb4 in your config file under the database component configuration like below

    'db'=>[
        'class' => 'yii\db\Connection' ,
        'dsn' => 'mysql:host=127.0.0.1;dbname=db_name' ,
        'username' => 'username' ,
        'password' => 'password' ,
        'charset'=>'utf8mb4'
    ]
    

    or change the table collation configuration in the database

    ALTER TABLE Tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵