Heim > Backend-Entwicklung > PHP-Tutorial > php数组转json展示中文的一句代码,求解释

php数组转json展示中文的一句代码,求解释

WBOY
Freigeben: 2016-06-13 12:47:27
Original
913 Leute haben es durchsucht

php数组转json显示中文的一句代码,求解释

本帖最后由 wang23412 于 2013-06-09 17:05:27 编辑 我用php把数组转成json格式传给jquery 时发现中文会变成奇怪的编码。于是在网上找了下解决方法,看到很多人用下面两个函数解决了:
function arrayRecursive(&$array, $function, $apply_to_keys_also = false)<br />
{<br />
    static $recursive_counter = 0;<br />
    if (++$recursive_counter > 1000) {<br />
        die('possible deep recursion attack');<br />
    }<br />
    foreach ($array as $key => $value) {<br />
        if (is_array($value)) {<br />
            arrayRecursive($array[$key], $function, $apply_to_keys_also);<br />
        } else {<br />
            $array[$key] = $function($value);<br />
        }<br />
        if ($apply_to_keys_also && is_string($key)) {<br />
            $new_key = $function($key);<br />
            if ($new_key != $key) {<br />
                $array[$new_key] = $array[$key];<br />
                unset($array[$key]);<br />
            }<br />
        }<br />
    }<br />
    $recursive_counter--;<br />
}
Nach dem Login kopieren

function JSON($array) {<br />
 arrayRecursive($array, 'urlencode', true);<br />
 $json = json_encode($array);<br />
 return urldecode($json);<br />
}
Nach dem Login kopieren

我测试了下确实能解决问题,于是仔细研究了下代码,发现如下这句代码不知道是什么意思:
$array[$key] = $function($value);
Nach dem Login kopieren

我在这句话前后分别输出$array[$key]看下值,发现这句话把中文变成了一串编码。
求各位大侠解释下$function($value)是什么意思。
PHP JSON 中文 编码
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage