json的键名为数字时的调用方式(示例代码)

yipeiwu_com6年前PHP代码库

对于键名为数字或者非正常变量字符时(如有空格),必须使用obj[xx]方式获取值。

复制代码 代码如下:

<?php

//声明json数据
$array = array('result'=>array("90"=>"90队列","status"=>"成功"));
$json = json_encode($array);

$array1 = array("90"=>"90队列","status"=>"成功");
$json1 = json_encode($array1);
$phpjson = json_decode($json1,true);//第二个参数是true,表示把json数据转换为数组
//对于json键名是数字时,只能用数组方式处理$phpjson['90'];
?>
<!DOCTYPE unspecified PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<script type="text/javascript">
/**
* 测试json数据调用示例
*/
function test(){
//调用方式一
var data = '<?php echo $json?>';//php json数据,这里只能用单引号,因为php的json数据中有双引号了
data = eval("("+data+")");//js 解析json数据,主要是因为json数据用单引号后变为字符串了
alert(data['result'][90]);//对于数字需要用数组的方式访问
alert(data['result'].status);//对于非数字可以使用.的方式访问

//调用方式二
var data1 = <?php echo $json1?>;//php json数据,这里没有用单引号,因为直接是json数据
alert(data1[90]);//对于数字需要用数组的方式访问
alert(data1.status);//对于非数字可以使用.的方式访问
alert(data1['status']);//还可以使用数组方式调用

//注:对于键名为数字或者非正常变量字符时(如有空格),必须使用obj[xx]方式获取值。
}
</script>
<input type="button" value="button" onclick="test();"/>
</body>
</html>

相关文章

PHP 得到根目录的 __FILE__ 常量

1。PHP 的 __FILE__ 常量(如何得到根目录) dirname(__FILE___) 函数返回的是脚本所在在的路径。 比如文件 ...

php中如何同时使用session和cookie来保存用户登录信息

php中如何同时使用session和cookie来保存用户登录信息

同时使用session和cookie来保存用户登录信息1、数据库连接配置页面:connectvars.php复制代码 代码如下:<?php//数据库的位置define('DB_HO...

PHP实现生成带背景的图形验证码功能

本文实例讲述了PHP实现生成带背景的图形验证码功能。分享给大家供大家参考,具体如下: 以前我们利用php生成的都是无背景或同一色彩背景的验证码了,但这种验证容易给机器识别了,这里就来介绍...

PHP实现生成唯一会员卡号

PHP实现生成唯一会员卡号

在不查询数据库的情况下,每个会员登录进来会生成一个数字字母组合不重复的会员卡号。 效果图如下: 当我们要将一个庞大的数据进行编号时,而编号有位数限制,比如5位的车牌号、10位的某证件号...

PHP session垃圾回收机制实例分析

本文实例讲述了PHP session垃圾回收机制。分享给大家供大家参考,具体如下: session过期时间 在php.ini文件中有这样一个配置,这个配置表示session文件过期时间,...