Bir diziye ağaç gibi nesne yapısını dönüştürme ve her şeyi interating

0 Cevap php

Ben nesneleri iki tür oluşan bir ağaç gibi nesne yapıya sahiptir:

  1. sınıfın object Category
  2. sınıfın object CategoryLink

Yapısı şöyledir:

The whole story begins with an array of Categories that have no parent Each Category has a few unimportant properties and a few important:
$parent - containing an id of a parent Category,
$children - containin an array of childern Categories (may be empty if the category has no childern of course).
$links - containing an array of CategoryLinks (also possibly empty)

__constructing bir Category, ben mevcut çocuk için Categories ve CategoryLinks bakmak, ve bazı varsa, ben onların örneklerini oluşturmak ve eklerken $children ve $links onları, hiçbir çocuk bir kategori ulaşılana kadar bu işlem, böylece çocuklarımız ve onların çocukları ve için tekrarlar. />

Peki bu işlem yapar bu temelde Categories bir ağaç oluşturur ve Links olmasıdır. Ben (Smarty kullanarak), ve ben bunun üzerinde uygun şekilde yineleme nasıl emin değilim çıkış için bu ağaç yapısını istediğiniz kadar bu yeterince iyi gider. İstenilen çıktı böyle bir şeydir

Parent1 -its unimportant properties
    -Child1 - its unimportant properties
    -Child2 -...
        -Child2's Child1
        -Child2's Child2
    -Child3
Parent2
    -Child1
        -Child1's Child1
    -Child2
Parent3
...

Ben emin değilim, onun daha iyi PHP üzerinde yineleme ve çok boyutlu bir dizi dönüştürmek ve Smarty üzerinde yineleme veya Smarty hepsini şekilde yaparsanız.

* Ben, sınıfının nesneleri CategoryLink bahsetmiyorlar unutmayın gibi Category bunlardan sadece tek boyutlu bir dizi içerir, bu nedenle onlar üzerinde yineleme ziyade olabilir kolay, ben sadece tüm yapısı üzerinde yineleme nasıl emin değilim.

What is the best | right way to do this?

0 Cevap