Recherche de fonction en php

Fermé
Darkonline Messages postés 2 Date d'inscription mercredi 14 novembre 2012 Statut Membre Dernière intervention 25 novembre 2012 - 14 nov. 2012 à 15:52
Darkonline Messages postés 2 Date d'inscription mercredi 14 novembre 2012 Statut Membre Dernière intervention 25 novembre 2012 - 25 nov. 2012 à 09:39
Bonjour,
Je voulais savoir si c'était possible en PHP de récupérer, dans un fichier PHP (par exemple), une fonction et de renvoyer son nom, ainsi que les variables à rentrer.
Je m'explique:
On a un fichier func.class.php
<?php
function afficherTxt($txt) {
     echo $txt;
}
class affTxt {
     var $txt;
     var $dir;
     public function __construct($txt, $dir) {
          $this->txt = $txt;
          $this->dir = $dir;
     }
     public function affTxt() {
          echo "$this->txt est dans $this->dir";
     }
}
?>

Et on veut que ça affiche quelque chose comme :
function afficherTxt($txt)

class affTxt($txt, $dir){
     var $txt
     var $dir
     public function affTxt()
}

J'avais pensé à récupérer ligne par ligne les données, s'il y a a include ou un require, récupérer les lignes de ces fichiers et en extraire les lignes.
Pour les fonctions, aucun problème, un simple if(substr_count($line, function) != 0) me permet de trouver une fonction simple.

Mais comment faire pour les class ?
Comment savoir si la fonction et la var appartiennent a la class ?
Comment rendre ce code plus rapide aussi ?


Merci et bonne journée,
Cordialement
A voir également:

2 réponses

mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
19 nov. 2012 à 15:00
Bonjour,

Et ceci?
https://www.php.net/manual/en/function.func-get-args.php

ca serait pas plus simple?

A+
0
Darkonline Messages postés 2 Date d'inscription mercredi 14 novembre 2012 Statut Membre Dernière intervention 25 novembre 2012
25 nov. 2012 à 09:39
Oui et non. func-get-arts permet de récupérer les arguments d'un fonction déjà défini. Par exemple, func($m) { echo $m }, func('test'), si j'utilise func-get-args, alors il m'affichera 1 -> 'test' et non 1->$m.
Mais merci quand même pour l'aide.
0