如何在PHP中从MySql读取波斯字符串?

Moj*_*aSh 5 html php mysql persian

我在数据库的表行中插入了波斯字符串,其中我的列集合设置为utf8mb4_persian_ci。

但是,当我想从MySql数据库读取数据到php时,它不能正确显示波斯字符串,而仅显示????

我读了许多文章来解决此问题,但对我却不起作用,我在连接数据库后使用了此代码

 $mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
 $mysqli->set_charset("utf8");
Run Code Online (Sandbox Code Playgroud)

而此代码位于php代码的标头

 header("Content-Type: text/html;charset=UTF-8");
Run Code Online (Sandbox Code Playgroud)

而此代码位于html代码的顶部

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">  
Run Code Online (Sandbox Code Playgroud)

但是它不起作用,并且我在从MySql读取到php的php页面中看不到波斯字符串

如何解决这个问题?

ode*_*dta 3

这是我用来让它正常工作的代码,因为我使用了你所有的代码,这意味着你的mysql数据库配置不正确,请使用正确的排序规则重新创建你的数据库,确保表排序规则也相同并且字段输入为TEXT

\n\n

这是代码:

\n\n
<?php\n$mysqli = new mysqli(\'localhost\', \'root\', \'\', \'persian\');\n$mysqli->set_charset("utf8");\nheader("Content-Type: text/html;charset=UTF-8");\n$mysqli->query("INSERT INTO user SET name=\'\xd9\x81\xd8\xa7\xd8\xb1\xd8\xb3\xdb\x8c / \xd9\xbe\xd8\xa7\xd8\xb1\xd8\xb3\xdb\x8c\'");\n$result = $mysqli->query("SELECT * FROM user");\n$result = $result->fetch_object();\necho \'<pre dir="ltr">\';var_dump($result);echo \'</pre>\';\necho $result->name;?>\n
Run Code Online (Sandbox Code Playgroud)\n