带有丹麦字符的json_encode在php

时间:2016-02-14 10:43:28

标签: php

我在json_encode中使用丹麦字符。但它的价值为零。

$response = array("Logind gennemført", "Din konto venter på aktivering");
print_r($response);
echo json_encode($response, true);

提前致谢。

2 个答案:

答案 0 :(得分:1)

您需要将数组值编码为utf8,以便使用utf8_encode()array_map

$yourArr = array_map('utf8_encode', $response); 

$json = json_encode($yourArr);

请注意,您在json_encode()中使用了两个不需要的参数。

答案 1 :(得分:0)

注意:

  • 确保您创建阵列的脚本采用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 )

Echo json对象字符串:

["Logind gennemf\u00f8rt","Din konto venter p\u00e5 aktivering"]