IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Laravel PHP Discussion :

Element 0 d'un tableau accessible avec dd mais pas avec var_dump


Sujet :

Laravel PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Element 0 d'un tableau accessible avec dd mais pas avec var_dump
    Bonjour,

    Je rencontre un problème sur un site avec une base de données contenant des classes. Je vais essayer de faire simple et compréhensible.

    J'utilise Laravel Comme framework.

    Je récupère une liste de classe de ma base de données avec :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $objetClasse = DB::table('classes')->select('nb_accompagnateurs')->get();

    Quand j'essaie de stocker la première valeur du tableau retourné dans un autre tableau :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $accompagnateurs[$session->id] = $objetClasse[0]->nb_accompagnateurs;

    Une exception est levée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ErrorException (E_NOTICE) Undefined offset: 1
    Je sais que cela signifie que j'essaie d'accéder à une valeur qui n'existe pas dans le tableau $objetClasse, mais j'ai bien dans ma base de données un valeur qui devrait être récupérée. De plus, lorsque je fais :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    dd($objetClasse[0]);
    , la valeur est belle et bien affichée.

    Pour compliquer encore l'histoire, quand j'essaie d'afficher le premier élément de $objetClasse avec var_dump(), l'exception est levée et isset($objetClasse[0]) retourne false.

    Si quelqu'un a une explication à m'apporter, je lui en serais très reconnaissant. N'hésitez pas si vous avez des questions.

    AEvann

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    J'ai finalement trouvé le problème !

    Cette partie du code se trouve dans une boucle et l'erreur survenait en réalité à la seconde itération. Du coup, quand j'utilise dd(), la boucle s'arrête à la première itération et ne posait pas problème. Or, quand on utilise var_dump(), la boucle continuait ses itérations et levait une erreur en arrivant à la deuxième. Mon tableau de la deuxième itération ne contenait pas d'élément 0, d'où l'erreur.

    En espérant que ca peut servir à quelqu'un.

    AEvann

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Page accessible en local mais pas en ligne
    Par Leehan dans le forum Apache
    Réponses: 1
    Dernier message: 08/04/2019, 12h56
  2. Réponses: 4
    Dernier message: 25/08/2015, 16h10
  3. Réponses: 2
    Dernier message: 24/01/2011, 10h53
  4. [MySQL] left outer join et concaténation dans un tableau passe par if mais pas par else ?
    Par SpaceFrog dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 08/04/2008, 15h09
  5. Transférer un tableau excel vers access avec VBA (bug)
    Par beegees dans le forum VBA Access
    Réponses: 2
    Dernier message: 18/07/2007, 09h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo