iphoneとかスマホで絵文字を入れると文字化けする。どうしたものか。
mysqlの文字コードを4バイトで扱えるようにする。
utf-8mb4 。(utf8mb4_general_ci)。
DBにインサートするときも文字コードを
utf-8mb4 にする。
//例
$db = new mysqli($this->server, $this->user, $this->password, $this->dbname);
$db->set_charset('utf8mb4');//ここの部分
$stmt = $db->prepare("REPLACE INTO ".$this->tablename26." VALUES (?,?,?,?,?,?)");
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZ0eHQ9UEhQJTIwJTJCJTIwTXlTUUwlMjAlRTMlODElQTclRTMlODIlQjklRTMlODMlOUUlRTMlODMlOUIlRTMlODElQUUlRTclQjUlQjUlRTYlOTYlODclRTUlQUQlOTclRTMlODIlOTIlRTQlQkQlQkYlRTMlODElODYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWUyNWNkZmI5Y2Y1MjY4ZTc4NThkNzdlMGU2Mjg1NzMz&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwa2FuLW5vJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1iZTFkYWJiYjNlNjk1MzI3NWY0ZDhmOWEwODA2MGM1Yg&blend-x=142&blend-y=491&blend-mode=normal&s=5e6cbc9b6a5dea4fcdd771731707bf85)
PHP + MySQL でスマホの絵文字を使う - Qiita
文字コードを utf8mb4 にするとスマホ絵文字が使えるらしい。まず、テーブルをクリエイトする際に CHARSET を utf8mb4 にする。CREATE TABLE IF NOT EXIS…
コメント