我的查询从数据库中选择一行,并以json的形式输出到浏览器,但我遇到了一个无法解决的问题:每当我的查询选择的行包含一个特殊字符时,例如“ö", "ä" “或”å" php的响应变得完全空白。我的问题是:
"SELECT email, firstname, lastname, phone, role FROM members WHERE id=? LIMIT 1"
我这样输出:
$data = array(
"email" => $email,
"firstname" => $firstname,
"lastname" => $lastname,
"phone" => $phone,
"role" => $role
);
echo json_encode($data);
exit();
如果我手动用如下特殊字符替换输出的一部分:
$data = array(
"email" => $email,
"firstname" => "Jörgen", <-------------
"lastname" => $lastname,
"phone" => $phone,
"role" => $role
);
echo json_encode($data);
exit();
然后正确输出。我的 config.php
包含以下内容:
header('Content-type: text/plain; charset=utf-8');
我的数据库排序规则设置为 utf8_general ci
1条答案
按热度按时间qnyhuwrf1#
尽量包括
$db_connect->set_charset("utf8");
在连接到数据库时在php代码中(哪里$db_connect
将包含数据库连接)