PHP JSON解析,仅显示三个参数之一
我有一个向php页面发送HTTP POST的html页面,并嵌入了一个JSON对象作为参数。然而,当我试图检索参数时,我只能检索“pass”,而不能检索其他任何内容。我是否遗漏了在php中解析JSON的内容 html邮寄表格:PHP JSON解析,仅显示三个参数之一,php,html,json,forms,post,Php,Html,Json,Forms,Post,我有一个向php页面发送HTTP POST的html页面,并嵌入了一个JSON对象作为参数。然而,当我试图检索参数时,我只能检索“pass”,而不能检索其他任何内容。我是否遗漏了在php中解析JSON的内容 html邮寄表格: <form method="POST" action="......../username_exist.php" > <input type="hidden" name="param" value='{"username":"user123","pass
<form method="POST" action="......../username_exist.php" >
<input type="hidden" name="param" value='{"username":"user123","pass":"147852369qwerfdsazxcv","funny":"funny"}' />
<input type="submit" value="Click Me to submit" />
</form>
给出以下结果:
147852369qwerfdsazxcv
这在我的本地网站上很有用:
$param = json_decode($_POST['param']);
$username = $param->username;
$pass = $param->pass;
$funny = $param->funny;
echo $pass;
echo $username;
echo $funny;
不同之处在于,我使用了
->
,因为它是一个对象,而不是数组。这在我的本地计算机上非常有效:
$param = json_decode($_POST['param']);
$username = $param->username;
$pass = $param->pass;
$funny = $param->funny;
echo $pass;
echo $username;
echo $funny;
不同之处在于,我使用了->
,因为它是一个对象,而不是数组。根据我读到的内容,调用json_decode
而不调用assoc
参数将返回一个对象,因此需要访问其属性,如$param->pass
,$param->username
干杯 根据我读到的内容,调用json_decode
而不调用assoc
param将返回一个对象,因此您需要访问其属性,如$param->pass
,$param->username
干杯 Philip是对的,您需要将true作为第二个参数添加到json_decode中,以获取返回的数组
$param = json_decode( $_POST['param'], true );
…将json作为关联数组返回,并使您的其余代码按预期工作。Philip是对的,您需要将true作为第二个参数添加到json_decode以获取数组
$param = json_decode( $_POST['param'], true );
..将json作为关联数组返回,并使您的其余代码按预期工作。能否显示POST['param']中的echo内容?特别是它得到了URLCoded吗?@xandar
echo“1”。$\u POST['param'].“2”代码>给出1{“用户名”:“用户123\”,“通过”:“147852369qwerfdsazxcv\”,“有趣的”:“有趣的”}2
。我想我现在明白了问题所在,但我怎样才能通过考试呢?PHP正在自动转义“如何停止此操作?但是,我仍然不明白为什么“pass”会起作用,当“username”和“funcy”无法获取返回的关联数组时,json_decode中的第二个参数必须为true。我在答案中添加了这一行。祝你好运。你能显示出POST['param'中的echo内容吗请问?它是不是被URL编码的?@xandarecho“1”。$\u POST['param'].“2”;
给出1{“用户名”:“user123\”,“pass\”:“147852369qwerfdsazxcv\”,“搞笑的”:“搞笑的”}.2
。我想我现在看到了这个问题,但我如何通过这个问题?PHP是自动转义的,我如何阻止这个?但是,我仍然不明白为什么要“通过”工作,当“username”和“funcy”无法获取返回的关联数组时,json_decode中的第二个参数必须为true。我把这句话写进了答案。祝你好运,谢谢。它现在起作用了,但现在似乎疯狂的是“通行证”不知怎的成功了。。。。。。别客气,谢谢。它现在起作用了,但现在似乎疯狂的是“通行证”不知怎的成功了。。。。。。嗯~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~