PluginProbe
The Innovative Form Builder – IvyForms / 0.1.2
The Innovative Form Builder – IvyForms v0.1.2
1.5.1 1.5 1.4.1 1.4 trunk 0.1.2 0.2 0.2.1 0.3 0.3.1 0.4 0.5 0.6 0.6.1 0.6.1-backup 0.6.1.1 0.7 0.8 0.8.1 0.8.2 0.9 0.9.1 1.0 1.1 1.1.1 All 27 releases
ivyforms / backend / vendor / php-di / phpdoc-reader / README.md

README.md in The Innovative Form Builder – IvyForms 0.1.2, at backend/vendor/php-di/phpdoc-reader/README.md

58 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 # PhpDocReader
2
3 ![](https://img.shields.io/packagist/dt/PHP-DI/phpdoc-reader.svg)
4
5 This project is used by:
6
7 - [](http://php-di.org/PHP-DI 6](http://php-di.org/](http://php-di.org/)
8 - [](https://github.com/balihoo/phockito-unit-php-diphockito-unit-php-di](https://github.com/balihoo/phockito-unit-php-di](https://github.com/balihoo/phockito-unit-php-di)
9
10 Fork the README to add your project here.
11
12 ## Features
13
14 PhpDocReader parses `@var` and `@param` values in PHP docblocks:
15
16 ```php
17
18 use My\Cache\Backend;
19
20 class Cache
21 {
22 /**
23 * @var Backend
24 */
25 protected $backend;
26
27 /**
28 * @param Backend $backend
29 */
30 public function __construct($backend)
31 {
32 }
33 }
34 ```
35
36 It supports namespaced class names with the same resolution rules as PHP:
37
38 - fully qualified name (starting with `\`)
39 - imported class name (eg. `use My\Cache\Backend;`)
40 - relative class name (from the current namespace, like `SubNamespace\MyClass`)
41 - aliased class name (eg. `use My\Cache\Backend as FooBar;`)
42
43 Primitive types (`@var string`) are ignored (returns null), only valid class names are returned.
44
45 ## Usage
46
47 ```php
48 $reader = new PhpDocReader();
49
50 // Read a property type (@var phpdoc)
51 $property = new ReflectionProperty($className, $propertyName);
52 $propertyClass = $reader->getPropertyClass($property);
53
54 // Read a parameter type (@param phpdoc)
55 $parameter = new ReflectionParameter(array($className, $methodName), $parameterName);
56 $parameterClass = $reader->getParameterClass($parameter);
57 ```
58