函数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"}

Spinservers:美国圣何塞服务器,双E5/64GB DDR4/2TB SSD/10Gbps端口月流量10TB,$111/月

spinservers怎么样?spinservers大硬盘服务器。Spinservers刚刚在美国圣何塞机房补货120台独立服务器,CPU都是双E5系列,64-512GB DDR4内存,超大SSD或NVMe存储,数量有限,机器都是预部署好的,下单即可上架,无需人工干预,有需要的朋友抓紧下单哦。Spinservers是Majestic Hosting Solutions,LLC旗下站点,主营美国独立...

RackNerd 黑色星期五5款年付套餐

RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...

vpsdime7美元/月,美国达拉斯Windows VPS,2核4G/50GB SSD/2TB流量/Hyper-V虚拟化

vpsdime怎么样?vpsdime是2013年成立的国外VPS主机商,以大内存闻名业界,主营基于OpenVZ和KVM虚拟化的Linux套餐,大内存、10Gbps大带宽、大硬盘,有美国西雅图、达拉斯、新泽西、英国、荷兰机房可选。在上个月搞了一款达拉斯Linux系统VPS促销,详情查看:vpsdime夏日促销活动,美国达拉斯vps,2G内存/2核/20gSSD/1T流量,$20/年,此次推出一款Wi...

json_encode为你推荐
马云将从软银董事会辞职马云在阿里巴巴是什么职位..首席执行官兼执行董事怎么是卫哲?难道单单是董事会主席美女桌面背景图片最漂亮的美女电脑壁纸哪里有?非主流桌面背景图片给我找几张好看的桌面图片??2017年双11销售额2018年双十一(11.11)淘宝天猫一天的交易额能突破2500亿吗?麒麟990和骁龙865哪个好目前高通哪款处理器可以与麒麟990匹敌?免费阅读小说app哪个好求一个看书比较好的APP华为p40和mate30哪个好华为mate30和荣耀3O那个好?宝来和朗逸哪个好朗逸和宝来那个比较好些各方面手机管家哪个好有哪些人下了手机管家,最好的是哪个?海克斯皮肤哪个好摄魂使者薇恩和海克斯安妮皮肤哪个好 怎么合成
域名购买 成都虚拟主机 国外idc kddi 360抢票助手 网页背景图片 台湾谷歌网址 空间出租 微信收钱 宁波服务器 中国电信测网速 重庆双线服务器托管 免费asp空间申请 购买空间 买空间网 镇江高防服务器 蓝队云 apache启动失败 alertpay 香港打折信息 更多