Bonjour,

Je voudrai pouvoir créer un fichier XML à partir d'un array.
Cet array ce présente comme ca:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Array
(
    [0] => Array
        (
            [NUM] => 3
            [FILE] => nom_de_fichier.txt
            [FILE2] => nom de fichier.txt
            [DATE] => 21-11-2012 16:05:52
            [SOC] => test
            [CONTACT] => nom prenom
            [CL] => 1234
        )
 
    [1] => Array
        (
            [NUM] => 3
            [FILE] => nom_de_fichier.txt
            [FILE2] => nom de fichier.txt
            [DATE] => 21-11-2012 11:25:41
            [SOC] => test2
            [CONTACT] => nom2 prenom2
            [CL] => 5678
        )
 
    [2] => Array
        (
            [NUM] => 3
            [FILE] => nom_de_fichier.txt
            [FILE2] => nom de fichier.txt
            [DATE] => 21-11-2012 12:25:41
            [SOC] => test3
            [CONTACT] => nom3 prenom3
            [CL] => 5678
        )
...
...
)
Je voudrai à partir de ça, créer un fichier de ce style:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
<list>
   <node cl="1234">
       <fichier date="21-11-2012 16:05:52" soc="test" contact="nom prenom">nom_de_fichier.txt</fichier>
   </node>
   <node cl="5678">
       <fichier date="21-11-2012 11:25:41" soc="test2" contact="nom2 prenom2">nom_de_fichier.txt</fichier>
       <fichier date="21-11-2012 12:25:41" soc="test3" contact="nom3 prenom3">nom_de_fichier.txt</fichier>
   </node>
</list>
J'ai réussi à créer un fichier xml avec le contenu qui me convient, mais j'ai fait ça n'importe comment, et je ne sais pas comment gérer l'unicité des "cl". par exemple, si une entrée existe déjà dans le xml avec le cl 1234, je ne veux pas re-créer un nouveau noeud, mais plutôt ajouter un enfant "<fichier>" dans ce noeud. Par contre, s'il n'existe pas, alors on le crée.

Je n'arrive plus à comprendre car j'ai fait tellement de tests que je ne sais plus où chercher. Auriez-vous un bout de code d'exemple, ou un piste à me filer svp ?

J'espère que vous pourrez m'aider.