【发布时间】:2018-05-01 17:11:14
【问题描述】:
我的查询从我的数据库中选择一行并以 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
【问题讨论】: