Type stdClass

Résolu/Fermé
jujubossmortel Messages postés 7 Date d'inscription mardi 29 mars 2022 Statut Membre Dernière intervention 10 mai 2022 - Modifié le 9 mai 2022 à 14:05
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 - 10 mai 2022 à 10:25
Bonjour,
en voulant corriger mon code, j'ai découvert cette erreur ce qui casse tous le résultat:



voici le code qui me produit cette erreur :
$NewLongueurVal = null;
                for ($i = 0 ; count($tableProfil) > $i ; $i++){

                    // comparaision des longueur avec la BD et récueration des bonnes longueur
                    if($NumPaquet == $NbLigne){
                     if( $NewLongueurVal == null && $LongAvantBD[$i] > $LgDecoupeMinArrondiVal){
                        $NewLongueurVal = $LongAvantBD[$i];
                    }
                    if($LgDecoupeMinArrondiVal < $LongAvantBD[$i] && $LongAvantBD[$i] < $NewLongueurVal){
                        $NewLongueurVal = $LongAvantBD[$i];
                        $ligne[5]=$LongAvantBD[$i];
                    }}
                    else{
                    if( $NewLongueurVal == null && $LongBD[$i] > $LgDecoupeMinArrondiVal){   
                        $NewLongueurVal = $LongBD[$i];
                    }
                    if($LgDecoupeMinArrondiVal < $LongBD[$i] && $LongBD[$i] <= $NewLongueurVal){
                        $NewLongueurVal = $LongBD[$i];
                        $ligne[5]=$LongBD[$i];
                    }}}


la partie exacte qui produit l'erreur est "$LongBD[$i] <= $NewLongueurVal", quand je retire le signe "<=" et met juste "<", l'erreur ne ce produit plus mais ce n'est pas le resultat souhaiter

merci par avance de votre aide

2 réponses

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
9 mai 2022 à 14:30
Bonjour,

Il te suffit de convertir ton objet en array ...
par exemple
$object = new StdClass;
$object->foo = 1;
$object->bar = 2;

var_dump( (array) $object );

ou alors.. d'arrêter d'utiliser des boucle for à l'ancienne .. et passer à du foreach

0
jujubossmortel Messages postés 7 Date d'inscription mardi 29 mars 2022 Statut Membre Dernière intervention 10 mai 2022
10 mai 2022 à 09:21
Merci pour ton aide mais j'ai resolu le problème autrement,

ma récupération de tableau ce faisait comme ca,
$tab = (json_decode($Tab)); 


et maintenant je la fais comme ca pour bien recupérer un array et pas un stdClass,
$tab = (json_decode($Tab,true)); 
0
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
10 mai 2022 à 10:25
C'est la solution que je t'aurais en effet donné ...... si j'avais eu ces lignes de code sous les yeux dès le départ ...
A l'avenir, pense à nous donner l'intégralité du code et pas juste un extrait ..ça peut aider!
0