0

我使用 utf8_bin 在我的数据库中存储了印地语字体数据。我能够从数据库中获取它并在使用时显示它:

但是,我希望输出为 json 格式,清楚地显示印地语字体数据。我尝试使用 json_encode 但它返回的数据类似于:

{"标题":"\u0938\u0942\u0930\u094d\u092f\u094b\u0926\u092f","详细信息":"\u0938\u0941\u092c\u0939\u094d \u0915\u093e \u0938\u092e\u092f\ u094d"}1 {"标题":"\u0905\u0928\u094d\u0917\u094d\u0930\u0947\u095b\u0940 \u0938\u0947 \u0939\u093f\u0928\u094d\u0926\u0940","详情": "\u092a\u0930\u093f\u0935\u0930\u094d\u0924\u0928\u094d"}2 {"标题":"\u0932\u094b\u0915\u094d \u0938\u092d\u093e","详细信息":"\ "

相反,我希望它像

{“标题”:सूर्योदय,“详细信息”:सुबह् का समय्}

请建议

4

1 回答 1

3

这是我认为的默认行为。但是有两件事你可以尝试

  1. 如果您使用的是 PHP 5.4,您可以设置 JSON_UNESCAPED_UNICODE 选项标志。
  2. 如果您使用的是其他版本,请尝试以下解决方法:

    array_walk_recursive($array, function(&$item, $key) {
        if(is_string($item)) {
            $item = htmlentities($item);
        }
    });
    $json = json_encode($array);
    $rson = html_entity_decode($rson);
    
于 2012-09-10T08:50:50.940 回答