当我使用PHP代码时,我可以成功地将阿拉伯语数据存储在MySQL数据库中,但得到的数据格式错误。请注意以下几点:
在我的配置文件中,我有以下代码:

$this->conn->exec("SET CHARACTER SET utf8");

标题已更改如下:
header('Content-Type: text/html; charset=UTF-8');

最佳答案

编码应在三点处更改:
从一开始就不是utf8。
PDO连接将其更改为默认值。
表/DB编码不是utf8。
在这里我们将检查选项1
首先检查文本编码

$text = "أهلا وسهلا!";
var_dump(mb_detect_encoding($text));

将文本放入$text变量并在浏览器中运行此脚本(仅用于编码检查)mb_detect_encoding函数应让您知道文本编码。
在你知道编码之后,你可以使用iconv函数并转换它。
然后,使用iconv函数转换为UTF8,例如:
if(mb_detect_encoding($text)!== "UTF-8")
    $decoded_text = iconv(mb_detect_encoding($text), 'UTF-8', $text);

10-08 08:14
查看更多