Question

Je l'ai essayé d'utiliser des ensembles imbriqués, et ils deviennent très difficiles à maintenir en traitant avec des arbres multiples et beaucoup d'autres complications .. Je voudrais donner la bibliothèque de SPL de PHP un coup de poignard à ce (BTW, nous sommes PHP 5.3 , MySQL 5.1).

Étant donné deux ensembles de données:

Les groupes:

+-------+--------+---------------------+---------------+
| id    | parent | Category Name       | child_key     |
+-------+--------+---------------------+---------------+
| 11133 |   7707 | Really Cool Products| 47054         |
|  7709 |   7708 | 24" Monitors        | 57910         |
|  7713 |   7710 | Hot Tubs            | 35585         |
|  7716 |   7710 | Hot Dogs            | 00395         |
| 11133 |   7707 | Really Cool Products| 66647         |
|  7715 |   7710 | Suction Cups        | 08396         |
+-------+--------+---------------------+---------------+

Les éléments

+------------+------------+-----------+----------+---------+
| child_key  | totalprice | totalcost | totalqty | onorder | (jan, feb, mar..)
+------------+------------+-----------+----------+---------+
| 24171      |      10.50 |     20.10 |      200 |     100 |
| 35685      |      10.50 |     20.10 |      200 |     100 |
| 76505      |      10.50 |     20.10 |      200 |     100 |
| 04365      |      10.50 |     20.10 |      200 |     100 |
| 01975      |      10.50 |     20.10 |      200 |     100 |
| 12150      |      10.50 |     20.10 |      200 |     100 |
| 40060      |      10.50 |     20.10 |      200 |     100 |
| 08396      |      10.50 |     20.10 |      200 |     100 |
+------------+------------+-----------+----------+---------+

Les chiffres sont en réalité beaucoup plus compliqué que cela (je suis en fait une quantité de concentration de variable de mois ou d'années au cours des dernières 15ans, donc il faudra peut-être 20 colonnes de résultats agrégés).

EDIT: @Gordon Je suppose qu'il ya plusieurs façons de s'y prendre pour obtenir le .. Idéalement resultset, je voudrais les trucs RecursiveIterator me donner quelque chose que je pourrais cracher dans une vue que aurait toute la logique métier (agrégation des nœuds feuilles, etc) déjà fait .. donc le résultat ressemblerait à quelque chose comme ceci (notez que la profondeur dans une liste de contiguïté est arbitraire):

+------------+------------+-----------+----------+---------+
| Name       | totalprice | totalcost | totalqty | onorder | (jan, feb, mar..)
+------------+------------+-----------+----------+---------+
| Monitors   |      36.00 |     60.40 |      800 |     400 | (category)
| --24"      |      22.00 |     40.20 |      400 |     200 | (category)
| ---04365   |      10.50 |     20.10 |      200 |     100 | (item)
| ---04366   |      11.50 |     20.10 |      200 |     100 | (item)
| --22"      |      1.50  |     10.10 |      200 |     100 | (category)
| ---04365   |      1.50  |     10.10 |      200 |     100 | (item)
| -01234     |      12.50 |     10.10 |      200 |     100 | (item)
+------------+------------+-----------+----------+---------+

: FIN EDIT

J'ai essayé de trouver RecursiveIterator et

scroll top