当包含粗俗分数时,json_encode返回null

时间:2015-09-23 05:24:33

标签: php json

这是我的代码:

<?php
$arr="Untuk ¼ genggam. Tinggal 1 ½ gelas. Sehari ½ gelas.";
print_r($arr);
print(json_encode($arr));

当我在邮差中运行时,结果是:

Untuk genggam。 Tinggal 1 gelas。 Sehari gelas.null

当我在浏览器中运行时:

Untuk¼genggam。 Tinggal1½Gelas。 Sehari½gelas.null

但是,当我在http://codepad.viper-7.com/http://phptester.net/正常运行时进行测试时,

如何在json_encode中返回相同的值?

抱歉英文不好, 谢谢

4 个答案:

答案 0 :(得分:0)

试试这个:

  $arr="untuk mengatasi muntah darah/pendarahan rahim digunakan pohon sambung nyawa dan umbinya 1 batang, kunyit 1 jari, kayu secang (tua) yang telah diserut ¼ genggam. Kunyit dikupas, diiris tipis, kemudian direbus bersama bahan lainnya dengan air 2 gelas hingga tinggal 1 ½ gelas. Angkat dan saring, diminum 2 kali sehari ½ gelas.";
print($arr);
print_r(json_encode($arr));

答案 1 :(得分:0)

json_encode()实际上并没有输出字符串,它是javascript字符串。

在javascript(和JSON中)中,č可以转义为\ u010。两者是等价的.JSON文本的字符编码总是Unicode.So,它没有做错。

相反,请尝试关注您想要的结果

print(json_encode($arr, JSON_UNESCAPED_UNICODE));

答案 2 :(得分:0)

您只能将json_encode用于数组。我认为它不可能用于字符串

试试这个:

 $arr[]="untuk mengatasi muntah darah/pendarahan rahim digunakan pohon sambung nyawa dan umbinya 1 batang, kunyit 1 jari, kayu secang (tua) yang telah diserut ¼ genggam. Kunyit dikupas, diiris tipis, kemudian direbus bersama bahan lainnya dengan air 2 gelas hingga tinggal 1 ½ gelas. Angkat dan saring, diminum 2 kali sehari ½ gelas.";

 echo json_encode($arr);

请阅读以下链接

PHP Json_encod

答案 3 :(得分:0)

json_encode 接收必须 UTF-8编码的数据。

<?php
$arr="Untuk ¼ genggam. Tinggal 1 ½ gelas. Sehari ½ gelas.";
print_r($arr);
print(json_encode(utf8_encode($arr)));
?>

Source

相关问题