【发布时间】:2011-11-11 07:13:37
【问题描述】:
我从 mysql 数据库中检索数据。我想将这些数据作为 json 提供:
<?php
$data = array();
foreach($this->dataFromDb as $value){
$data[] = $value;
}
$json = json_encode($data);
echo $json;
?>
不幸的是,这会在 json 中产生 null 值,因为例如$value['title'] 可能包含非 utf-8 字符,例如 €。为了解决这个问题,我改变了这一行。
$data[] = array_map(utf8_encode, $value);
但现在我在 json 输出中有 \u00 或 \u0080 这样的字符串。我如何获得我的普通文本,就像它从 json 存储在 db 中一样?当我尝试时
print_r(json_decode($json));
我又得到了像für 599,95€ 这样的奇怪字符。
有什么想法吗?
【问题讨论】: