我知道这是我的语法,但找不到问题。在php失败时获取已知密钥的值
我通常使用一个循环来把任何JSON键进入变量是这样的:
发送JSON: [{\"name\":\"dolly\",\"page\":\"A4\"}]
$object = json_decode(stripslashes($_POST['myData']));
foreach ($object[0] as $key => $value)
{
$$key = preg_replace('/--+/',' ',$value);
}
所以现在,例如,我有$页= “A4”。工作正常。
现在,我不想像这样循环,我只想访问'page'键(我知道每次都会在那里)并忽略其他任何内容。
我认为这将做到这一点,但它与“不能使用类型为stdClass的对象作为排序”倒了:
$object = json_decode(stripslashes($_POST['myData']));
$page = $object[0]['page'];
这不报错了,但它没有返回值:
$object = json_decode($_POST['myData']);
$p = $object[0]->page;
一样
$p = $object->page;
什么我搞砸了这里?
感谢您的关注。
var_dump($ object)'的输出是什么? – Kjir
为什么你的JSON在引号前有斜杠?这不是有效的JSON。 – Barmar
@Barmar它来自POST请求,所以PHP会自动添加它们,并且有一个'stripslashes'调用来删除它们。 – Pietu1998