Note that the public member $class contains the name of the class in which the method has been defined:
<?php
class A {public function __construct() {}}
class B extends A {}
$method = new ReflectionMethod('B', '__construct');
echo $method->class; // prints 'A'
?>
La classe ReflectionMethod
(PHP 5)
Introduction
La classe ReflectionMethod rapporte des informations sur une méthode.
Synopsis de la classe
Propriétés
- name
-
Nom de la méthode
- class
-
Nom de la classe
Constantes pré-définies
Modificateurs de ReflectionMethod
-
ReflectionMethod::IS_STATIC -
Indique que la méthode est statique
-
ReflectionMethod::IS_PUBLIC -
Indique que la méthode est publique
-
ReflectionMethod::IS_PROTECTED -
Indique que la méthode est protégée
-
ReflectionMethod::IS_PRIVATE -
Indique que la méthode est privée
-
ReflectionMethod::IS_ABSTRACT -
Indique que la méthode est abstraite
-
ReflectionMethod::IS_FINAL -
Indique que la méthode est finale
Sommaire
- ReflectionMethod::__construct — Construit un nouvel objet ReflectionMethod
- ReflectionMethod::export — Exportation d'une méthode de reflection
- ReflectionMethod::getClosure — Retourne une fermeture créée dynamiquement pour la méthode
- ReflectionMethod::getDeclaringClass — Récupère la déclaration de la classe de la méthode réléchie
- ReflectionMethod::getModifiers — Récupère les modificateurs de la méthode
- ReflectionMethod::getPrototype — Récupère le prototype de la méthode (s'il existe)
- ReflectionMethod::invoke — Invoque
- ReflectionMethod::invokeArgs — Invoque les arguments
- ReflectionMethod::isAbstract — Vérifie si la méthode est abstraite
- ReflectionMethod::isConstructor — Vérifie si la méthode est un constructeur
- ReflectionMethod::isDestructor — Vérifie si la méthode est un destructeur
- ReflectionMethod::isFinal — Vérifie si la méthode est finale
- ReflectionMethod::isPrivate — Vérifie si la méthode est privée
- ReflectionMethod::isProtected — Vérifie si la méthode est protégée
- ReflectionMethod::isPublic — Vérifie si la méthode est publique
- ReflectionMethod::isStatic — Vérifie si la méthode est statique
- ReflectionMethod::setAccessible — Définit l'accessibilité de la méthode
- ReflectionMethod::__toString — Retourne une représentation textuelle de la méthode
webseiten dot designer at googlemail dot com ¶
2 years ago
no dot prob at gmx dot net ¶
7 years ago
I have written a function which returns the value of a given DocComment tag.
Full example:
<?php
header('Content-Type: text/plain');
class Example
{
/**
* This is my DocComment!
*
* @DocTag: prints Hello World!
*/
public function myMethod()
{
echo 'Hello World!';
}
}
function getDocComment($str, $tag = '')
{
if (empty($tag))
{
return $str;
}
$matches = array();
preg_match("/".$tag.":(.*)(\\r\\n|\\r|\\n)/U", $str, $matches);
if (isset($matches[1]))
{
return trim($matches[1]);
}
return '';
}
$method = new ReflectionMethod('Example', 'myMethod');
// will return Hello World!
echo getDocComment($method->getDocComment(), '@DocTag');
?>
Maybe you can add this functionality to the getDocComment methods of the reflection classes.
