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

Langage PHP Discussion :

Mise en forme getMethods [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut Mise en forme getMethods
    Salut tout le monde tout d'abord je tien a m’excuser car je suis sur que cette question à déjà du être posé 36 000 fois mais rien trouvé de bien concluant :/

    voila voulant faire une fonction pour afficher toutes les informations d'une class j'ai regardé et j'ai trouvé getMethods. Mon problème c'est que ça renvoie tout le code sur une seul ligne et donc illisible/impossible de mettre en page pour une lecture plus agréable.

    Ma question étais aurais t'il un moyen de récupérer chaque information autre qu'en passant par des regex pour pouvoir mettre facilement en page?

    Merci d'avance

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Si tu parle de getMethodsde la classe de Reflexion elle doit te retourner un tableau , donc facile à mettre en forme avec un foreachSinon va falloir être un peu plus précis sur ta demande , un peu de code par exemple.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut
    Merci de votre réponse. Effectivement ça me renvoie un tableau mais sous cette forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    [0] => ReflectionMethod Object
            (
                [name] => salut
                [class] => db
            )
    Et quand je fais un echo $MonTableau[0] (car il s'agit d'un string en valeur de retour)

    J'obtient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /** *	Obtention du nom de la table à partir de sont identifiant *	 *	db::salut('tb_acteur'); *	 *	@param string $idTable	Identifiant de la table * *	@return string Nom de la table */ Method [ static public method tableName ] { @@ /var/url/MonFichier.php 17 - 21 - Parameters [1] { Parameter #0 [ $idTable ] } }
    Ce qui n'est vraiment pas lisible ^^ et c'est ceci que je voudrais amélioré. Quand on affiche la source on obtient

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    /**
    	*	Obtention du nom de la table à partir de sont identifiant
    	*	<code>
    	*	db::salut('tb_acteur');
    	*	</code>
    	*	@param string	$idTable	Identifiant de la table
    	*
    	*	@return string Nom de la table
    	*/
    Method [ <user> static public method tableName ] {
      @@ /var/url/MonFichier.php 17 - 21
     
      - Parameters [1] {
        Parameter #0 [ <required> $idTable ]
      }
    }
    Donc bon je suis en train de faire ça avec un nl2br + explode + regex mais c'est pas type top :/

  4. #4
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Regarde la doc de la class ReflectionMethod, elle a toutes les méthodes que tu veux

  5. #5
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    j'avoue que je comprend pas bien ta problématique.

    Suffit de parcourir le tableau pour le formater comme tu veux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    class Test 
    {
    	/**
    	* hello method
    	*/
    	public function hello($test){} 
    	private function world(){}
    }
     
    $class = new ReflectionClass('Test');
    $methods = $class->getMethods();
     
    foreach($methods as $method) {
        echo $method->class.'::'.$method->name.'<br />';
    }
    Et comme dit plus haut pour plus de détail tu peux utiliser les propriétés de ReflectionMethod
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut
    Sauf que la grunks sa me donne que les noms moi je souhaite avoir les même infos que en haut mais lisible.
    Quand je dis lisible c'est que lorsqu'on va sur la page sa nous donne quelque chose de lisible pour une personne facilement sans avoir a chercher plus que ça

    Car la par exemple on s'y retrouve plus....

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

Discussions similaires

  1. [CR] mise en forme d'un champs texte en fonction des données
    Par niPrM dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 29/06/2004, 11h57
  2. [CR 9] Mise en forme non affichée when null
    Par Yorglaa dans le forum Formules
    Réponses: 2
    Dernier message: 28/06/2004, 17h27
  3. mise en forme rapide d'applets
    Par appletj dans le forum Applets
    Réponses: 11
    Dernier message: 03/06/2004, 13h28
  4. Mise en forme HTML
    Par Regis.C dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 25/04/2004, 11h55
  5. Mise en forme fichier avant Import
    Par jeff37 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/04/2004, 15h16

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