忘了从哪里弄来的了
if (!function_exists('json_encode'))
{
function json_encode($a=false)
{
if (is_null($a)) return 'null';
if ($a === false) return 'false';
if ($a === true) return 'true';
if (is_scalar($a))
{
if (is_float($a))
{
// Always use "." for floats.
return floatval(str_replace(",", ".", strval($a)));
}
if (is_string($a))
{
static $jsonReplaces = array(array("\\", "/", "\n", "\t", "\r", "\b", "\f", '"'), array('\\\\', '\\/', '\\n', '\\t', '\\r', '\\b', '\\f', '\"'));
return '"' . str_replace($jsonReplaces[0], $jsonReplaces[1], $a) . '"';
}
else
return $a;
}
$isList = true;
for ($i = 0, reset($a); $i < count($a); $i++, next($a))
{
if (key($a) !== $i)
{
$isList = false;
break;
}
}
$result = array();
if ($isList)
{
foreach ($a as $v) $result[] = json_encode($v);
return '[' . join(',', $result) . ']';
}
else
{
foreach ($a as $k => $v) $result[] = json_encode($k).':'.json_encode($v);
return '{' . join(',', $result) . '}';
}
}
}
分享到:
相关推荐
在PHP编程中,`json_encode`函数用于将PHP值转换为JSON格式的字符串。然而,当我们处理包含中文汉字的数据时,`json_encode`默认会转义这些非ASCII字符,导致输出的JSON字符串中中文汉字显示为乱码或者\u编码形式。...
在讨论解决PHP中json_encode函数不兼容JSON_UNESCAPED_UNICODE参数的问题之前,首先我们需要了解json_encode函数以及JSON_UNESCAPED_UNICODE参数的作用。json_encode是PHP内置函数,它用于将PHP值转换为JSON格式的...
这种方法简单且兼容所有PHP版本,但需要注意的是,它是在json_encode进行转义之后进行的处理,所以会多一次编码的开销。 示例代码如下: ```php $a = array( '***', '***', '***', '***', '***' ); // 对json...
在这个压缩包中,开发者已经努力使`Json`类与PHP5.0的`json_encode`保持兼容,这意味着即使在较老的PHP版本下,我们也可以期望得到与官方函数相似的输出结果。 总结来说,"json for PHP4.0"提供了一种在PHP 4.0环境...
本文针对PHP中的json_encode()和json_decode()函数进行详细说明。这两个函数在PHP开发中广泛使用,用于在JavaScript Object Notation (JSON)格式与PHP数据类型之间转换。了解这两个函数的用法,对于实现前后端数据...
在PHP中,`json_encode` 函数常用于将数组或对象编码成JSON格式的字符串。默认情况下,当数据中包含斜杠(“/”)这样的特殊字符时,`json_encode` 函数会自动对其进行转义,以确保生成的JSON字符串是有效的。转义...
json_encode_cn2使用正则替换,且依赖iconv函数,如果iconv存在bug相信也会有bug。json_decode_cn3使用曲线救国方式,自行urlencode生成的代码在各类语言中也非常容易urldecode。##json_decode_fixPHP的json_encode...
PHP提供了两种主要的方法用于实现这一功能:一是内置的serialize和unserialize函数,二是使用JSON格式的json_encode和json_decode函数。本文通过实验比较了这两种方法的性能差异。 首先,我们要了解序列化与反序列...
使用此类库时,开发者只需在他们的代码中包含这个库的文件,然后调用相应的函数(比如`Services_JSON::encode`和`Services_JSON::decode`),就能在不支持内置函数的PHP环境中进行JSON操作。这样,即使是在较旧的PHP...
而`PHP4_jsonEncode_jsonDecode.zip`可能包含了具体的Services_JSON库的源代码,以及针对PHP 4.0的`json_encode`和`json_decode`的实现。 学习和理解这些内容对于开发早期PHP应用或者了解PHP历史很有帮助。如果你...
这是因为`json_encode`默认只支持UTF-8编码,不兼容GBK和GB2312等其他编码方式。 当尝试用`json_encode`处理GBK或GB2312编码的中文字符串时,通常会出现以下两种情况: 1. **返回`null`**:如果`json_encode`遇到...
PHP从5.2版本开始原生支持JSON,通过内置的`json_encode()`和`json_decode()`两个函数实现对JSON数据的编码和解码操作。 1. `json_encode()`函数: 这个函数主要用于将PHP中的数组或对象转换成JSON格式的字符串。...
JSON 格式广泛用于 Web 服务和服务器与客户端之间的数据传输,因为它兼容 JavaScript,可以直接被 JavaScript 代码解析和使用。 PHP 提供了两个内置函数来处理 JSON 数据:`json_decode()` 和 `json_encode()`。 1...
也就是说,当使用PHP的`json_encode`函数(对应给定的`Json.class.php`文件可能包含了类似的函数)对包含中文字符的数组进行转义后,发送给微信API的请求可能会被拒绝或者无法正常处理。 在PHP中,`json_encode`...
4. **PHP与JavaScript数据交换**:JSON是PHP与JavaScript之间传递数据的理想选择,因为它们都原生支持JSON。在PHP中,可以使用`json_encode`生成JSON字符串,然后在JavaScript中用`JSON.parse()`解析。 5. **乱码...
2. JSON在PHP中的应用:在PHP中,JSON格式可以通过内置的json_encode()函数将PHP变量转换成JSON格式,以及通过json_decode()函数将JSON格式的数据转换回PHP变量。这些函数在PHP5版本中得到增强,特别是当PHP版本大于...
如果下载js_ext例子到本地,树显不出来,是因为json_encode函数未定义,建议下载个php的json通用类,比如service_json,就是这个文件了,呵呵。。。
快速:JSON使用本地json_encode()进行编码可靠:标头是自动发送的完成:您可以添加对象,属性或数组回调/变量或只是JSON选项兼容JSONP 兼容jQuery 缺点: 针对对象进行了优化,因为JSON是对象表示法。用法<?...