mirror of
https://github.com/barryvdh/ReflectionDocBlock.git
synced 2026-08-18 10:07:12 +00:00
Compare commits
7
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f0a2901e56 | ||
|
|
bc982b7d51 | ||
|
|
b892415ca3 | ||
|
|
37a1ac2e19 | ||
|
|
663df2c65b | ||
|
|
0b096ce2e7 | ||
|
|
5aea3269e1 |
@@ -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);
|
||||
|
||||
|
||||
+2
-1
@@ -6,7 +6,8 @@
|
||||
{"name": "Mike van Riel", "email": "[email protected]"}
|
||||
],
|
||||
"require": {
|
||||
"php": ">=5.3.2"
|
||||
"php": ">=5.3.2",
|
||||
"dflydev/markdown": "1.0.*"
|
||||
},
|
||||
"autoload": {
|
||||
"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();
|
||||
$result = $md->transformMarkdown($result);
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ class Tag implements \Reflector
|
||||
$tag_name = str_replace(
|
||||
' ', '', ucwords(str_replace('-', ' ', $matches[1]))
|
||||
).'Tag';
|
||||
$class_name = '\\phpDocumentor\\Reflection\\DocBlock\\Tag\\' . $tag_name;
|
||||
$class_name = 'phpDocumentor\\Reflection\\DocBlock\\Tag\\' . $tag_name;
|
||||
|
||||
return (@class_exists($class_name))
|
||||
? new $class_name($matches[1], isset($matches[2]) ? $matches[2] : '')
|
||||
|
||||
Reference in New Issue
Block a user