Déserialisation et récursivité
Bonjour à tous,
Je bloque pour faire un algo qui pourrait transformer ce type de tableau :
Code:
1 2 3 4 5
| array["a.aa"] = "value1",
array["a.bb.aaa"] = "value2",
array["a.bb.bbb"] = "value3",
array["b.aa.aaa.aaaa"] = "value4"
... |
en ce type d'object :
Code:
1 2 3 4
| objet.a.aa= "value1"
objet.a.bb.aaa = "value2"
objet.a.bb.bbb = "value3"
objet.b.aa.aaa.aaaa = "value4" |
(ou vu d'une autre façon :
Code:
1 2 3 4 5 6
| objet
.a
.aa = "value1"
.bb
.aaa = "value2"
... |
)
Le but final est d'utiliser la fonction serialize de prototype.js avec des champs inputs du genre <input name="section.data" value=.../> (ou éventuellement <input name="section[data]".../> peut importe ca ne change pas mon problème de fond) afin de mettre à jour un objet javascript déjà existant.
J'ai plus ou moins réussi à faire cela avec des evals, mais ça prend du temps et c'est pas fiable dans tous les cas.
Je n'arrive pas à trouver une bonne façon de faire pour transformer le string "aa.bb.cc" en objet récursif.
Quelqu'un a t-il une idée pour faire ça de manière efficace et rapide ou peut-être pour contourner ce problème, il y a probablement plus simple.
Merci d'avance, ça m'enlèverait une sacrée épine du pied, je bloque sur ce problème qui me parait pourtant pas si compliqué... snif :cry: