Bonjour,

Je dois remplir une classe au départ d'un formulaire reçu par la méthode POST.
Le formulaire de saisie est un tableau, ce qui implique que chaque élément de $_POST peut-être un tableau de longueur variable.

J'aimerais que la fonction d'hydratation que je rédige soit générale, à savoir que si l'élément $_POST est un attribut de ma classe, cet attribut prenne la valeur de l'élément du tableau POST que je lis.

Du coup, j'aurais :
- un foreach qui parcourt tout $_POST
- pour chaque clé trouvée, je la parcourt comme un tableau
- je regarde si j'ai un attribut de classe portant le nom de la clé (précédé par _ )
- si il existe, je lui assigne la valeur de l'élément en cours.

Ce qui , en théorie, devrait donner un code qui ressemble à ceci :


Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
for ($i = 0; $i < $nbchats - 1; $i++) {
    foreach ($_POST as $key => $value) {
        if (isset($chat->_$key)) {
            $chat->_$key = $_POST[$key][(count($_POST[$key]) - $i)];
        }
    }
}


Evidemment... Cela ne fonctionne pas.

Quelqu'un sait comment faire fonctionner cette idée ?