mirror of
https://github.com/barryvdh/ReflectionDocBlock.git
synced 2026-08-18 01:57:13 +00:00
Compare commits
8
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f0a2901e56 | ||
|
|
bc982b7d51 | ||
|
|
b892415ca3 | ||
|
|
37a1ac2e19 | ||
|
|
663df2c65b | ||
|
|
0b096ce2e7 | ||
|
|
5aea3269e1 | ||
|
|
3f8a4fca6d |
@@ -0,0 +1,57 @@
|
|||||||
|
The ReflectionDocBlock Component
|
||||||
|
================================
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
------------
|
||||||
|
|
||||||
|
The ReflectionDocBlock component of phpDocumentor provides a DocBlock parser
|
||||||
|
that is 100% compatible with the [PHPDoc standard](http://phpdoc.org/docs/latest).
|
||||||
|
|
||||||
|
With this component can a library provide support for annotations via DocBlocks
|
||||||
|
or otherwise retrieve information that is embedded in a DocBlock.
|
||||||
|
|
||||||
|
> **Note**: *this is a core component of phpDocumentor and is constantly being
|
||||||
|
> optimized for performance.*
|
||||||
|
|
||||||
|
Installation
|
||||||
|
------------
|
||||||
|
|
||||||
|
You can install the component in the following ways:
|
||||||
|
|
||||||
|
* Use the official Github repository (https://github.com/phpDocumentor/ReflectionDocBlock)
|
||||||
|
* Via Composer (http://packagist.org/packages/phpdocumentor/reflection-docblock)
|
||||||
|
|
||||||
|
Usage
|
||||||
|
-----
|
||||||
|
|
||||||
|
The ReflectionDocBlock component is designed to work in an identical fashion to
|
||||||
|
PHP's own Reflection extension (http://php.net/manual/en/book.reflection.php).
|
||||||
|
|
||||||
|
Parsing can be initiated by instantiating the
|
||||||
|
`\phpDocumentor\Reflection\DocBlock()` class and passing it a string containing
|
||||||
|
a DocBlock (including asterisks) or by passing an object supporting the
|
||||||
|
`getDocComment()` method.
|
||||||
|
|
||||||
|
> *Examples of objects having the `getDocComment()` method are the
|
||||||
|
> `ReflectionClass` and the `ReflectionMethod` classes of the PHP
|
||||||
|
> Reflection extension*
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
$class = new ReflectionClass('MyClass');
|
||||||
|
$phpdoc = new \phpDocumentor\Reflection\DocBlock($class);
|
||||||
|
|
||||||
|
or
|
||||||
|
|
||||||
|
$docblock = <<<DOCBLOCK
|
||||||
|
/**
|
||||||
|
* This is a short description.
|
||||||
|
*
|
||||||
|
* This is a *long* description.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
DOCBLOCK;
|
||||||
|
|
||||||
|
$phpdoc = new \phpDocumentor\Reflection\DocBlock($docblock);
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -6,9 +6,10 @@
|
|||||||
{"name": "Mike van Riel", "email": "[email protected]"}
|
{"name": "Mike van Riel", "email": "[email protected]"}
|
||||||
],
|
],
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=5.3.2"
|
"php": ">=5.3.2",
|
||||||
|
"dflydev/markdown": "1.0.*"
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-0": {"phpDocumentor\\Reflection": "src/phpDocumentor"}
|
"psr-0": {"phpDocumentor\\Reflection": "src/"}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -78,7 +78,7 @@ class LongDescription implements \Reflector
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (class_exists('\dflydev\markdown\MarkdownExtraParser()')) {
|
if (class_exists('\dflydev\markdown\MarkdownExtraParser')) {
|
||||||
$md = new \dflydev\markdown\MarkdownExtraParser();
|
$md = new \dflydev\markdown\MarkdownExtraParser();
|
||||||
$result = $md->transformMarkdown($result);
|
$result = $md->transformMarkdown($result);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ class Tag implements \Reflector
|
|||||||
$tag_name = str_replace(
|
$tag_name = str_replace(
|
||||||
' ', '', ucwords(str_replace('-', ' ', $matches[1]))
|
' ', '', ucwords(str_replace('-', ' ', $matches[1]))
|
||||||
).'Tag';
|
).'Tag';
|
||||||
$class_name = '\\phpDocumentor\\Reflection\\DocBlock\\Tag\\' . $tag_name;
|
$class_name = 'phpDocumentor\\Reflection\\DocBlock\\Tag\\' . $tag_name;
|
||||||
|
|
||||||
return (@class_exists($class_name))
|
return (@class_exists($class_name))
|
||||||
? new $class_name($matches[1], isset($matches[2]) ? $matches[2] : '')
|
? new $class_name($matches[1], isset($matches[2]) ? $matches[2] : '')
|
||||||
|
|||||||
Reference in New Issue
Block a user