0

あなたが答える前に、私は 0 が null、false、または空の文字列を返すことを知っています。それが問題です。私が知りたいのは、それに対する回避策があるかどうかです。

PHP 配列を json に変換しようとしていますが、json_encode() 関数がインデックスを保持していません。私の配列は保持されています。

    Array
    (
      [0] => Array
      (
        [0] => Array
          (
            [idCategory] => 1
            [name] => Carteiras
            [parent] => 0
            [weight] => 0
          )
        [1] => Array
          (
            [idCategory] => 2
            [name] => Bolsas
            [parent] => 0
            [weight] => 1
          )
        [2] => Array
          (
            [idCategory] => 3
            [name] => Cintos
            [parent] => 0
            [weight] => 2
          )
        [3] => Array
          (
            [idCategory] => 4
            [name] => Chinelos
            [parent] => 0
            [weight] => 3
          )
        [4] => Array
          (
            [idCategory] => 5
            [name] => Tênis Masculino
            [parent] => 0
            [weight] => 4
          )
        [5] => Array
          (
            [idCategory] => 6
            [name] => Rasteiras
            [parent] => 1
            [weight] => 5
          )
       )
    )

json:

{"Menu": [
  [
    {
      "idCategory": "1",
      "name": "Carteiras",
      "parent": "0",
      "weight": "0"
    },
    {
      "idCategory": "2",
      "name": "Bolsas",
      "parent": "0",
      "weight": "1"
    },
    {
      "idCategory": "3",
      "name": "Cintos",
      "parent": "0",
      "weight": "2"
    },
    {
      "idCategory": "4",
      "name": "Chinelos",
      "parent": "0",
      "weight": "3"
    },
    {
      "idCategory": "5",
      "name": null,
      "parent": "0",
      "weight": "4"
    },
    {
      "idCategory": "6",
      "name": "Rasteiras",
      "parent": "1",
      "weight": "5"
    }
  ]
]}

使用して設定した最初の配列

    $i = 0;
    $array[$i] = $somearray;

idCategory、名前、親、および重みを含む配列を使用して配列内に配置しました

    $somearray[] = $node;

私が使用すると、すべてが正しく機能します

    $array[$i . '_id'] = $somearray;
4

1 に答える 1