PHP无法更改数组中的json数据

时间:2014-03-17 18:25:01

标签: php arrays json

我正在为我正在进行的游戏的套接字服务器上工作,但我在更改从json解码的某些数据时遇到了问题。

我有一个名为decodeCrumbs的函数,它可以获取" crumbs"或者来自数据库的用户数据,json_decodes它并将其放入一个数组。这很好但在此之后我无法更改任何数组数据。

    $query = mysql_query("SELECT * FROM users WHERE username='".$this->username."';", $this->db);
    $row = mysql_fetch_array($query);
    $crumbs = json_decode($row['crumbs'], true);
    $this->crumbs = $crumbs;
    $this->crumbs["roomFurniture"] = "This does not work";

回显$this->crumbs["roomFurniture"] returns ""这是默认的(来自json数据)我也尝试过使用var_dump,但也确认它没有改变。我也尝试在课程开头添加public $crumbs,但它仍然会发生

我不知道造成这种情况的原因或解决方法

$ this-> crumbs

的Var_dump
array(24) {
  ["id"]=>
  int(1)
  ["nickname"]=>
  string(7) "Default"
  ["email"]=>
  string(0) ""
  ["active"]=>
  int(1)
  ["ban"]=>
  int(0)
  ["ismod"]=>
  int(0)
  ["rank"]=>
  int(0)
  ["key"]=>
  string(0) ""
  ["head"]=>
  int(0)
  ["face"]=>
  int(0)
  ["neck"]=>
  int(0)
  ["body"]=>
  int(0)
  ["hands"]=>
  int(0)
  ["feet"]=>
  int(0)
  ["photo"]=>
  int(0)
  ["flag"]=>
  int(0)
  ["colour"]=>
  int(1)
  ["items"]=>
  array(2) {
    [0]=>
    int(413)
    [1]=>
    int(1)
  }
  ["buddies"]=>
  array(0) {
  }
  ["ignore"]=>
  array(0) {
  }
  ["joindate"]=>
  string(0) ""
  ["coins"]=>
  int(1000)
  ["furniture"]=>
  array(0) {
  }
  ["roomFurniture"]=>
  string(0) ""
}

0 个答案:

没有答案