我在json_encode中使用丹麦字符。但它获得空值。
$response = array("Logind gennemført", "Din konto venter på aktivering");
print_r($response);
echo json_encode($response, true);
提前谢谢。
您需要
将数组值编码为 utf8,以便可以使用 utf8_encode()
和 array_map
。
$yourArr = array_map('utf8_encode', $response);
$json = json_encode($yourArr);
请注意,您在json_encode()
中使用了两个参数,这不是必需的。
注释:
- 确保创建数组的脚本是 UTF-8
- 编码的,或将数组转换为 UTF-8。
- 在 HTML 中使用时,请确保字符集设置为 UTF-8。
示例代码:
<?php
// Page header, specify character set
echo '<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US">
<head>
<meta charset="utf-8" />
</head>
<body>
';
// Code
$response = array("Logind gennemført", "Din konto venter på aktivering");
print_r($response);
echo json_encode($response, true);
// Page footer
echo '</body>
</html>
';
?>
结果:
打印阵列:
Array (
[0] => Logind gennemført
[1] => Din konto venter på aktivering
)
回显 json 对象字符串:
["Logind gennemf'u00f8rt","Din konto venter p'u00e5 aktivering"]