支持中文的 php json 函数
<?php
/**************************************************************
*
* 使用特定function对数组中所有元素做处理
* @param string &$array 要处理的字符串
* @param string $function 要执行的函数
* @return boolean $apply_to_keys_also 是否也应用到key上
* @access public
*
*************************************************************/
function arrayRecursive(&$array, $function, $apply_to_keys_also = false)
{
foreach ($array as $key => $value) {
if (is_array($value)) {
arrayRecursive($array[$key], $function, $apply_to_keys_also);
} else {
$array[$key] = $function($value);
}
if ($apply_to_keys_also && is_string($key)) {
$new_key = $function($key);
if ($new_key != $key) {
$array[$new_key] = $array[$key];
unset($array[$key]);
}
}
}
}
/**************************************************************
*
* 将数组转换为JSON字符串(兼容中文)
* @param array $array 要转换的数组
* @return string 转换得到的json字符串
* @access public
*
*************************************************************/
function JSON($array) {
arrayRecursive($array, 'urlencode', true);
$json = json_encode($array);
return urldecode($json);
}
?>
分享到:
相关推荐
JSON支持以下数据类型: - 数字(整数或浮点数) - 字符串(双引号包围) - 布尔值(`true` 或 `false`) - 数组(在JSON中称为“数组”) - 对象(在JSON中称为“对象”,由键值对组成) - `null` 五、JSON与PHP...
在PHP与其他语言(如JavaScript)交互时,通过设置`JSON_UNESCAPED_UNICODE`,可以确保在PHP端编码的JSON字符串在JavaScript端仍能正确解析中文汉字。例如,当JavaScript接收到这个JSON字符串后,可以使用`JSON....
在PHP 5.2及更早版本中,PHP内建的json扩展未被广泛支持,这时Services_JSON类就起到了关键作用。然而,从PHP 5.3开始,PHP内建的json扩展已经非常成熟,因此现在更推荐使用内置的json函数来处理JSON操作,因为它们...
在处理汉字时,`json_encode`可能会遇到问题,因为它默认不支持非ASCII字符集,如UTF-8编码的汉字。因此,如果MySQL查询结果包含汉字且未正确设置字符编码,`json_encode`可能会导致乱码或无法解码的错误。为了解决...
然而,在处理包含中文字符的JSON数据时,有时会遇到一些特定的问题,比如“微信API不支持中文转义的json结构”。 中文字符在JSON中的正确表示方式是使用Unicode编码。JSON标准规定,非ASCII字符必须转义为Unicode...
- **广泛支持**:除了JavaScript之外,还有许多其他语言如C++、C#、ColdFusion、Java、Perl、PHP和Python等都有对应的JSON库来支持数据格式化和转换。 - **高性能**:由于其简洁的语法结构,JSON相比XML等其他数据...
标题“PHP-JQuery-Ajax-json”揭示了这个压缩包文件主要涉及的是Web开发中的核心技术,具体包括PHP、jQuery、Ajax以及JSON。这四个元素在构建动态、交互式的Web应用程序时起着至关重要的作用。 1. **PHP(Hypertext...
2. **数据库编码设置**:确保数据库使用的字符集为支持中文的字符集,如MySQL中的`utf8mb4`。 3. **编码转换**: - 在获取数据前进行编码转换。例如,在PHP中可以使用`iconv()`函数转换编码,如`$data = iconv('...
PHP提供了内置的函数来支持JSON操作,包括`json_encode`和`json_decode`。这两个函数分别用于将PHP变量转换为JSON字符串和将JSON字符串解析为PHP变量。 1. `json_encode`函数: 这个函数用于将PHP值编码为JSON字符...
对于PHP 5.3版本,由于不支持 `JSON_UNESCAPED_UNICODE` 参数,我们需要采取其他方法来避免中文字符被转义。一种常见的解决方案是先将ASCII 127以上(包括中文字符)的字符转换为HTML数值实体,然后再进行解码。下面...
MySQL自5.7版本开始引入了对JSON数据类型的原生支持,这使得存储和查询结构化非关系型数据变得更加便捷。`JSON_CONTAINS`函数是MySQL提供的一种用于检查JSON文档中是否存在特定值的函数。它的基本语法是: ```sql ...
php5.4以下版本json不支持不转义内容中文的解决方法.doc
JSON格式在Web服务和客户端应用之间广泛用于数据传输,因为它能直接被JavaScript语法所支持,无需额外的解析过程。 ### JSON的基本结构与类型 1. **对象(Object)**:JSON对象由一对大括号 `{}` 包裹,其中存储的...
1. **编码转换**:在调用`json_encode()`之前,先将包含中文字符的数据转换为JSON支持的UTF-8编码。例如,可以使用PHP的内置函数`iconv()`或`mb_convert_encoding()`将其他编码的中文字符转换为UTF-8,然后再进行...
这种兼容性解决方案提供了一种方式,让那些在旧版本PHP环境下工作的开发者能够使用类似于PHP 5.4及以上版本中提供的JSON_UNESCAPED_UNICODE的功能,以便于在JSON数据交换过程中处理中文字符等问题,保证了更好的数据...
在PHP与JSON数据交换过程中,常常会出现中文乱码的问题。这主要是因为JSON和JavaScript在客户端处理字符时默认采用UTF-8格式,而当数据库和PHP页面编码不一致时,中文字符在与JSON交互中就会出现乱码。为了解决这一...
56个民族的Json数组文件,方便大家建立一个选项框,手工录入56个民族的数据,格式{"label":"汉族","value":"0"},{"label":"壮族","value":"1"},{"label":"满族","value":"2"}, 望大家下载支持
中文转换拼音,支持带或不带声调,支持把ü替换为v等任意字符,支持过滤标点符号,支持使用任意符号做连接符,同时支持json、jsonp、text、xml、js等多种输出格式 使用方法 参考实例文件:examples/examples.php ...
PHP从5.2版本开始内置了对JSON的支持,提供了`json_encode`和`json_decode`两个核心函数,使得操作JSON数据变得非常便捷。 1. **json简介** JSON是一种基于文本的数据格式,它以易于人阅读的方式存储和传输数据。...