多次元配列内のオブジェクトへのアクセスに問題があります。
コンテキスト
Name
基本的に、、、などID
で構成されるオブジェクト (カテゴリ) がありParentID
ます。ultimateArray
多次元の配列もあります。
特定のカテゴリについて、getPath()
配列を返す関数 ( ) を作成していますids
。たとえば、という名前のオブジェクトGranny Smith
はparentID
406 であるため、Food(5) -> Fruits(101) -> Apples(406) の子です。この関数は、オブジェクトの親の ID の配列または文字列を返します。上記の例では、5 -> 101 -> 406
または["5"]["101"]["406"]
または[5][101][406]
. 食べ物はルートカテゴリです!
問題
私がする必要があるのは、から返されたものgetPath()
を使用してカテゴリ ID 406
(Apples) にアクセスし、オブジェクトGranny Smith
を の子に追加できるようにすることですApples
。
機能$path = $this->getPath('406');
は適応可能です。次の行で返されるものを使用するのが難しいだけです:
$this->ultimate[$path]['Children'][]= $category;
ハードコーディングすると機能します:
$this->ultimate["5"]["101"]["406"]['Children'][]= $category;
//or
$this->ultimate[5][101][406]['Children'][]= $category;
どんな助けでも大歓迎です。