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

妮妮云36元,美国VPS洛杉矶 8核 8G 36元/月,香港葵湾 8核 8G

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...

Hostodo:$34.99/年KVM-2.5GB/25G NVMe/8TB/3个数据中心

Hostodo在九月份又发布了两款特别套餐,开设在美国拉斯维加斯、迈阿密和斯波坎机房,基于KVM架构,采用NVMe SSD高性能磁盘,最低1.5GB内存8TB月流量套餐年付34.99美元起。Hostodo是一家成立于2014年的国外VPS主机商,主打低价VPS套餐且年付为主,基于OpenVZ和KVM架构,美国三个地区机房,支持支付宝或者PayPal、加密货币等付款。下面列出这两款主机配置信息。CP...

racknerd新上架“洛杉矶”VPS$29/年,3.8G内存/3核/58gSSD/5T流量

racknerd发表了2021年美国独立日的促销费用便宜的vps,两种便宜的美国vps位于洛杉矶multacom室,访问了1Gbps的带宽,采用了solusvm管理,硬盘是SSDraid10...近两年来,racknerd的声誉不断积累,服务器的稳定性和售后服务。官方网站:https://www.racknerd.com多种加密数字货币、信用卡、PayPal、支付宝、银联、webmoney,可以付...

json_encode为你推荐
桌面背景图片淡雅电脑自带的桌面背景图片原来合适现在不合适了怎么办手动挡和自动挡哪个好自动挡手动挡哪个好?等额本息等额本金哪个好等额本金和等额本息哪个划算?如果想在5-10年内还清贷款哪类更划算一些?游戏盒子哪个好游戏盒子哪个好?电陶炉和电磁炉哪个好电陶炉和电磁炉哪个好手机管家哪个好最好的手机管家东莞电信宽带东莞电信宽带资费问题。急!360云盘360云盘干什么用的?360云盘登录360云盘登陆账号360云存储360网盘能存文件多久,我把重要文件放里面了一旦丢失就都没了
info域名注册 虚拟主机管理系统 php主机空间 域名查询系统 广州主机租用 vps安全设置 3322免费域名 主机屋 荣耀欧洲 台湾服务器 edis iisphpmysql godaddy域名优惠码 搜狗抢票助手 国外网站代理服务器 浙江独立 100m免费空间 有益网络 softbank邮箱 秒杀汇 更多