使用时获取空白而不是值 - >用PHP

时间:2014-03-26 14:59:28

标签: php

我正在制作一个网络应用。在其中的一部分,我有JS向PHP发送一个JSON字符串。字符串的符号是:

{"date":"24-03-2014","Cars":["Cheap","Expensive"]}

我想将字符串转换为对象,我正在做的事情:

$meta = $_POST["meta"];
$obj = json_decode($meta);
echo $obj->date;

无论如何,我没有输出24-03-2014,而是输出一个空行。

出了什么问题?这样做的正确方法是什么?

2 个答案:

答案 0 :(得分:0)

无法重新制作它:

$jsonStr = '{"date":"24-03-2014","Cars":["Cheap","Expensive"]}';
$jsonObj = json_decode($jsonStr);

var_dump($jsonObj);
var_dump($jsonObj->date);

输出:

object(stdClass)[1]
  public 'date' => string '24-03-2014' (length=10)
  public 'Cars' => 
    array (size=2)
      0 => string 'Cheap' (length=5)
      1 => string 'Expensive' (length=9)

string '24-03-2014' (length=10)

您确定$_POST['meta']已设置&有价值吗?

答案 1 :(得分:0)

下面的作品就像一个魅力。你的$ _POST [“date”]里面没有正确的值。尝试使用var_dump($ _ POST)进行调试。

<?php
  $input = '{"date":"24-03-2014","Cars":["Cheap","Expensive"]}';
  $meta = $input;
  $obj = json_decode($meta);
  var_dump($obj->date); //Prints string(10) "24-03-2014"
?>