代码如下 | 复制代码 |
function array_to_json($array) { if (! is_array ( $array )) { return false; } $associative = count ( array_diff ( array_keys ( $array ), array_keys ( array_keys ( $array ) ) ) ); if ($associative) { $construct = array (); foreach ( $array as $key => $value ) { // We first copy each key/value pair into a staging array, // formatting each key and value properly as we go. // Format the key: $construct = array (); |
你可以试试这个 然后json_encode换成上面的函数看看正常了吗
代码如下 | 复制代码 |
<?php if($_GET['enews']=='ok'){ echo json_encode(array('a'=>'王进'));exit; } ?> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(function(){ $.get("?enews=ok", function(result){ alert(result); }); }); </script> |
关于php中json_encode
json_encode()将PHP的不同类型的变量转换为对应的JSON字符串 string json_encode(mixed $value [, int
$options = 0])
PHP 5.3.0
JSON_HEX_QUOT: 将所有的双引号(”)转换为u0022。
// 实例代码:
代码如下 | 复制代码 |
$data = '"'; echo json_encode($data); // """ echo json_encode($data, JSON_HEX_QUOT); |
// "u0022"■JSON_HEX_TAG: 将所有的大于号(>)转换为u003E,将
所有的小于号(<)转换为 u003C。
JSON_HEX_AMP: 将所有的与号(&)转换为 u0026。
JSON_HEX_APOS: 将所有的单引号(’)转换为u0027。
JSON_FORCE_OBJECT: 当value为非关联数组时强制输出结果为JSON对象。在接收者要求数据为对象且value为空数组时
使用。
// 实例代码:
代码如下 | 复制代码 |
$data = array(); echo json_encode($data); // [] echo json_encode($data, JSON_FORCE_OBJECT); // {} |
PHP 5.3.3
JSON_NUMERIC_CHECK: Encodes numeric strings as numbers.
PHP 5.4.0
JSON_BIGINT_AS_STRING: Encodes large integers as their original string value. Available since PHP
5.4.0.
JSON_PRETTY_PRINT: Use whitespace in returned data to format it. Available since PHP 5.4.0.
JSON_UNESCAPED_SLASHES: Don’t escape /. Available since PHP 5.4.0.
JSON_UNESCAPED_UNICODE: Encode multibyte Unicode characters literally (default is to escape as uXXXX).
Available since PHP 5.4.0.