Partage
  • Partager sur Facebook
  • Partager sur Twitter

afficher des objet avec variables private

    21 mars 2019 à 17:57:52

    Hello les gens.

    j'ai une questions qui peux paraître bête pour les plus aguerri de ce forum, mais je cherche a afficher des variables d'un objet ou tout est private. sauf que foreach ne me les affiche pas et Google n'est pas plus bavard que la doc coté affichage d'objet avec variable private.

    avez vous une solution ? pour afficher par exemple une liste de personnage sans violer le principe d'encapsulation ?

    -
    Edité par JonathanPruvost1 21 mars 2019 à 18:00:05

    • Partager sur Facebook
    • Partager sur Twitter
      21 mars 2019 à 18:44:49

      Bonjour

      var_dump fait ça :) tu peux aussi utiliser une méthode "magique" de php, genre __debugInfo() :

      http://php.net/manual/fr/language.oop5.magic.php#language.oop5.magic.debuginfo 

      • Partager sur Facebook
      • Partager sur Twitter
        21 mars 2019 à 20:17:32

        Bonsoir pifou, je pense qu'on ne sait pas bien compris je cherche à afficher les objet genre, pour faire un affichage des personnage que j'ai dans ma bdd je suis sur la poo php et j'avoue être perdu, je pense qu'il y a pas mal de chose que je dois mal comprendre, et c'est le bordel dans ma tête..

        Je comprends bien que ce sont des entité que je dois entré dans ma bdd, puis créer un manager et son crud, puis utilisé ses méthodes pour creer lire mettre à jour où supprimer mes données mais la je sèche j'ai beau me battre depuis deux jours à lire et relire le cours bah pas moyen de comprendre.. Ça devient découragent à force

        • Partager sur Facebook
        • Partager sur Twitter
          21 mars 2019 à 20:44:26

          Ben alors détaille un peu mieux ce que tu veux faire? Afficher un objet, var_dump($objet) ça le fait ça affiche tout y compris les propriétés privées ^^ peu importe que ton objet soit une entité issue de ta bdd ou n'importe quoi d'autre, ça marche avec tous les objets.

          Maintenant si tu veux faire un foreach sur une propriété qui est inaccessible parce que privée, ta seule solution c'est de la modifier tu la passe publique ;) ou bien tu lui colle un getter, c'est plus standard ! ça veut dire qu'elle était privée à tort = erreur de conception de ta POO.

          • Partager sur Facebook
          • Partager sur Twitter
            22 mars 2019 à 7:22:52

            Sauf que la poo indique bien qu'il ne faut jamais mettre en public une propriété.

            Sinon pour la question tu n'a pas 36 solutions. Pour du debug tu as var_dump et pour un vrai code tu as la "Reflection".

            http://php.net/manual/fr/function.var-dump.php

            http://php.net/manual/fr/class.reflection.php

            • Partager sur Facebook
            • Partager sur Twitter

            afficher des objet avec variables private

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown