函数PHP json_encode() 函数取值介绍

json_encode  时间:2021-01-26  阅读:()

PHP json_encode() 函数取值介绍

在php中使用json_encode() 内置函数(php > 5. 2)可以使用得php中数据可以与其它语言很好的传递并且使用它。

/------------------------------------------------------php转为json编码:$json_string=json_encode($php_obj) ;json转为php解码:$php_obj=json_decode($json_string) ;/------------------------------------------------------

这个函数的功能是将数值转换成json数据存储格式。 <?php$arr = arr ay

(

'Age'=>20

) ;

$jsonencode = json_encode($arr) ;echo $jsonencode;

?>

程序运行结果如下view sourceprint?1 {"Name":null, "Age":20}

<?php

$arr = arr ay

(

'Age'=>20

) ;

$jsonencode = json_encode($arr) ;echo $jsonencode;

?>

程序运行结果如下view sourceprint?1 {"Name":null, "Age":20}json_encode函数中中文被编码成null了 Google了一下很简单为了与前端紧密结合 Json只支持utf-8编码我认为是前端的Javascript也是utf-8的原因。

<?php

$array = array

(

' title'=>iconv('gb2312' , 'utf-8' , '这里是中文标题' ) ,

'body'=>'abcd. . . '

) ;echo json_encode($array) ;

?>

这个程序的运行结果为

{"title":"\u8fd9\u91cc\u662f\u4e2d\u6587\u6807\u9898", "body":"abcd. . . "}

数组中所有中文在json_encode之后都不见了或者出现\u2353等。解决方法是用urlencode()函数处理以下在json_encode之前把所有数组内所有内容都用urlencode()处理一下然用json_encode()转换成json字符串最后再用urldecode()将编码过的中文转回来。<?php

/**********************************************************

****

*

* 使用特定funct i on对数组中所有元素做处理

* @param string &$array 要处理的字符串

* @param string $function 要执行的函数

* @return boolean $apply_to_keys_also 是否也应用到key上

* @access public

*

***********************************************************

**/function arrayRecursive(&$array, $function,

$apply_to_keys_also = false)

{static $recursive_counter = 0;if (++$recursive_counter > 1000) {die('possible deep recursion attack' ) ;

}foreach ($array as $key => $value) {i f (is_array($value)) {arrayRecursive($array[$key], $funct ion,

$apply_to_keys_also) ;

} else {

$array[$key] = $funct ion($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]) ;

}

}

}

$recursive_counter--;

}

/**********************************************************

****

*

* 将数组转换为JS ON字符串兼容中文

* @param array $array 要转换的数组

* @return string 转换得到的json字符串

* @access public

*

***********************************************************

**/function JSON($array) {arrayRecurs ive($array, 'urlencode' , true) ;

$j son = json_encode($array) ;return urldecode($json) ;

}

$array = array

(

'Age'=>20

) ;echo JSON($array) ;

?>

这次成功了运行结果如下

{"Name":"希亚", "Age":"20"}

friendhosting:(优惠55%)大促销,全场VPS降价55%,9个机房,不限流量

每年的7月的最后一个周五是全球性质的“系统管理员日”,据说是为了感谢系统管理员的辛苦工作....friendhosting决定从现在开始一直到9月8日对其全球9个数据中心的VPS进行4.5折(优惠55%)大促销。所有VPS基于KVM虚拟,给100M带宽,不限制流量,允许自定义上传ISO...官方网站:https://friendhosting.net比特币、信用卡、PayPal、支付宝、微信、we...

JustHost:俄罗斯/新西伯利亚vps,512MB内存/5GB空间/不限流量/200Mbps/KVM/自由更换IP,$1.57/月

justhost怎么样?justhost是一家俄罗斯主机商,2006年成立,提供各种主机服务,vps基于kvm,有HDD和SSD硬盘两种,特色是200Mbps不限流量(之前是100Mbps,现在升级为200Mbps)。下面是HDD硬盘的KVM VPS,性价比最高,此外还有SSD硬盘的KVM VPS,价格略高。支持Paypal付款。国内建议选择新西伯利亚或者莫斯科DataLine。支持Paypal付...

RAKsmart:美国圣何塞服务器限量秒杀$30/月起;美国/韩国/日本站群服务器每月189美元起

RAKsmart怎么样?RAKsmart是一家由华人运营的国外主机商,提供的产品包括独立服务器租用和VPS等,可选数据中心包括美国加州圣何塞、洛杉矶、中国香港、韩国、日本、荷兰等国家和地区数据中心(部分自营),支持使用PayPal、支付宝等付款方式,网站可选中文网页,提供中文客服支持。本月商家继续提供每日限量秒杀服务器月付30.62美元起,除了常规服务器外,商家美国/韩国/日本站群服务器、1-10...

json_encode为你推荐
莫代尔和纯棉哪个好纯棉含莫代尔和100%莫代尔哪个好华为p40和mate30哪个好荣耀30pro和华为p40对比。,哪个更值得入手?浏览器哪个好用浏览器哪个最好用?宝来和朗逸哪个好朗逸和宝来买哪个好手机杀毒软件哪个好手机杀毒清理软件哪个好啊电陶炉和电磁炉哪个好电磁炉跟电陶炉哪个好51空间登录手机怎么登陆51空间啊辽宁联通网上营业厅网辽宁省联通发短信查gprs流量方法willyunlee找一部关于摩托车的电影`东莞电信网上营业厅怎样联系申请东莞中国电信固话
域名空间 ip反查域名 网通服务器租用 过期域名查询 域名备案收费吗 空间服务商 坐公交投2700元 徐正曦 169邮箱 免费吧 1美金 in域名 dnspod 电信宽带测速软件 小夜博客 上海联通 htaccess web服务器 西部主机 木马检测 更多