Download
We distribute a PHP Archive (PHAR) that contains all required dependencies of PHP Reflect bundled in a single file.
Make it executable, and put it into your $PATH.
$ chmod +x phpreflect-3.1.2.phar
$ mv phpreflect-3.1.2.phar /usr/local/bin/phpreflect
$ phpreflect --version
You can also immediately use the PHAR after you have downloaded it.
$ wget http://bartlett.laurent-laville.org/get/phpreflect-3.1.2.phar
$ php phpreflect-3.1.2.phar --version
With both methods then you have this output :
phpReflect version 3.1.2
Other alternative installations are possible. Please refer to the documentation for details on how to do this.
Configuration
phpreflect.json{
    "source-providers": [
        {
            "in": ". as current",
            "name": "/\\.(php|inc|phtml)$/"
        }
    ],
    "plugins": [
    ],
    "analysers": [
    ],
    "services": [
    ]
}
Put it in your project’s folder. Alternative locations are possible. Please refer to the documentation for details on how to do this.
Structure
- source-providers
- this entry provide list of your data sources to parse.
- plugins
- this entry list all plugins added to the core base code of PHP Reflect.
- analysers
- 
this entry list all analysers that may be used with the analyser:runcommand.
- services
- this entry list all services that may be used with this application.
Execution
With the Reflect source code, invoke the following command :
$ phpreflect analyser:run .
and you should obtain something like this :
Data Source Analysed
Directories                                         20
Files                                               72
Structure
  Namespaces                                        20
  Interfaces                                         8
  Traits                                             0
  Classes                                           64
    Abstract Classes                                 6 (9.38%)
    Concrete Classes                                58 (90.62%)
  Methods                                          293
    Scope
      Non-Static Methods                           280 (95.56%)
      Static Methods                                13 (4.44%)
    Visibility
      Public Method                                250 (85.32%)
      Protected Method                              34 (11.60%)
      Private Method                                 9 (3.07%)
  Functions                                         13
    Named Functions                                  0 (0.00%)
    Anonymous Functions                             13 (100.00%)
  Constants                                         22
    Global Constants                                 0 (0.00%)
    Magic Constants                                  3 (13.64%)
    Class Constants                                 19 (86.36%)
  Tests
    Classes                                          0
    Methods                                          0
Another analyser (loc) is also available, and can be combined or not with structure
the default analyser.
With the Reflect source code, invoke the following command :
$ phpreflect analyser:run . loc
and you should obtain something like this :
Data Source Analysed
Directories                                         20
Files                                               72
Size
  Lines of Code (LOC)                             3721
  Comment Lines of Code (CLOC)                     136 (3.65%)
  Non-Comment Lines of Code (NCLOC)               3585 (96.35%)
  Logical Lines of Code (LLOC)                    1196 (32.14%)
    Classes                                       1116 (93.31%)
      Average Class Length                          17
      Average Method Length                          3
    Functions                                       80 (6.69%)
      Average Function Length                        6
    Not in classes or functions                      0 (0.00%)
Complexity
  Cyclomatic Complexity / LLOC                    0.55
  Cyclomatic Complexity / Number of Methods       2.88
Summary
Let’s review what we’ve done :
- 
downloaded the latest stable PHAR version. 
- 
prepared a minimalist JSON configuration file that is OPTIONAL to run Reflect commands. 
- 
executed your first parse on the Reflect data source. 
Next
Choose your way depending of your skill level.