Pregunta

Estoy buscando una función o clase que pueda describir efectivamente una clase:

class MyClass{

  /*
  * Perhaps include the function comments
  * in the function.
  */
  function mainFunction(){
    //Does Something
  } 

  function functionWithArgs($arg1,$arg2=false){
    //Does Something
    //The function I want will give e the arguments w/default values
  }

}

¿Existe una función o biblioteca que pueda darme algún tipo de acceso a la información sobre esta clase, o incluso al archivo?

ex.

get_file_outline('fileWithAboveClass.php');

o

get_class_outline('MyClass');

¿Alguien sabe o conoce una forma de escribir esto fácilmente?

¿Fue útil?

Solución

Echa un vistazo al PHP API de reflexión

//use the ReflectionClass to find out about MyClass
$classInfo = new ReflectionClass('MyClass'); 

//then you can find out pretty much anything you want to know...
$methods = $classInfo->getMethods(); 
var_dump($methods);

//you can even extract your comments, e.g.
$comment=$classInfo->getMethod('mainFunction')->getDocComment();

Tenga en cuenta que para la extracción de comentarios al trabajo, deben formatearse como comentarios de PhpDoc / Doxygen, y comenzar con una apertura /**

Otros consejos

También hay una opción de línea de comando disponible para inspeccionar funciones y clases.

$ php --rc DateTime

le dará todos los detalles sobre la clase de fecha y hora, mientras que

$ php --rf in_array

Te dará los argumentos de la función "in_array".

Si está utilizando el terminal al codificar, puede ser bastante útil de usar en lugar de buscarlo en el manual de PHP todo el tiempo;)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top