Question

Je recherche une classe d'ensembles imbriqués PHP (avec MYSQL) avec toutes les fonctions nécessaires. Par exemple:

createLeftNode, createRightNode, createRootNode, createSubNode, deleteNode et moveTree . Non seulement 1 à gauche, 1 à droite, 1 en haut et 1 en bas, mais aussi une partie d’un arbre dans un autre arbre.

Merci!

Était-ce utile?

La solution

Les ensembles bien imbriqués sont parfaits si vous utilisez des données hiérarchiques. Il est beaucoup plus complexe de ne l'implémenter qu'avec des tableaux php, surtout si vous souhaitez enregistrer ces informations dans une base de données.

vous pouvez essayer ceci. Jamais utilisé, mais après un filtrage de code court, il semble presque terminé.

http://www.edutech.ch/contribution/nstrees/index.php

Autres conseils

consultez le comportement imbriqué de Doctrine

Il y a quelque chose de nouveau autour: http://www.sideralis.org/baobab/

Réponse ancienne et obsolète. La bibliothèque n'est plus supportée.

J'ai utilisé la bibliothèque nstrees " buggzzy " posted ( http://www.edutech.ch/contribution/nstrees/index.php ) pour un projet dans lequel je devais donner à l’utilisateur la possibilité de créer et d’éditer l’organigramme de sa société.

J'aime la "&?; Traversée de l’arbre de précommande modifié" " algorithme beaucoup mais il me semble que la bibliothèque nstree est lente. Dans mon cas, je dois itérer récursivement dans l'arbre. Peut-être que c'est quelque chose d'autre dans mon script qui est lent.

Quoi qu'il en soit, je suis toujours à la recherche d'une alternative. J'ai récemment consulté le site Web PEAR et y ai trouvé une bibliothèque d'arbres: http://pear.php.net/package/Tree

La bibliothèque PEAR ne semblait pas aussi complète que NSTREE mais je suppose qu’elle pourrait être plus performante.

Un article qui m'a beaucoup aidé avec cette question: Stocker des données hiérarchiques dans un Base de données

Consultez cette bibliothèque https://github.com/fpietka/Zend-Nested-Set : Implémentation d'un modèle d'ensemble imbriqué à utiliser avec Zend Framework

Il se faisait attendre depuis longtemps, mais j’ai mis à jour https://github.com/fpietka/Zend- Ensemble imbriqué (même avec les tests unitaires).

J'ai écrit une implémentation d'ensemble imbriquée qui utilise Doctrine DBAL en tant que couche d'abstraction de base de données. Comme nous l’utilisons avec Drupal, il suit également un revision_id .

https://github.com/previousne/nested-set

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top