meneguetti / viscle
Viscle provides a visual lifecycle for PHP request.
1.2.0
2018-07-16 21:33 UTC
Requires
- php: ^7.1
Requires (Dev)
- phpunit/phpunit: ^4.8.35 || ^5.7
Suggests
- ext-xdebug: Required to proper generate the xdebug records log (^2.7.0).
This package is not auto-updated.
Last update: 2024-09-29 06:02:32 UTC
README
Viscle (Visual Lifecycle) provides a visual lifecycle for PHP request.
Installation
composer require meneguetti/viscle
Usage
- Include the following code where you want to start capturing the request lifecycle, it has to be somewhere after requiring 'vendor/autoload.php'.
\Viscle\Viscle::capture();
- Include the following code where you want to stop capturing and render the visual lifecycle.
echo \Viscle\Viscle::render();
Examples
- Example 1 - Simple usage of a set of classes within example folder:
\Viscle\Viscle::capture(); $a = new \Viscle\Example\A; $a->perform(); echo \Viscle\Viscle::render();
It will render like following:
- Example 2 - Usage in a framework (Laravel):
//inside public/index.php require __DIR__.'/../vendor/autoload.php'; $filter = new \Viscle\Filter\NamespaceWhitelist(); //We don't want our graph too long, right?! ;) $filter->classes = [ 'App', 'Viscle\Example' //it's just to include Viscle example in our graph ]; \Viscle\Viscle::capture($filter); ... //inside your controller/action or route closure //just an example to show in graph $a = new \Viscle\Example\A; $a->perform(); echo \Viscle\Viscle::render();
It will render like following:
- Example 3 - Usage in a framework (Zend Framework 3):
//inside public/index.php include __DIR__ . '/../vendor/autoload.php'; $filter = new \Viscle\Filter\NamespaceWhitelist(); $filter->classes = ['Application', 'Album', 'Viscle\Example']; \Viscle\Viscle::capture($filter); ... //inside your controller/action //just an example to show in graph $a = new \Viscle\Example\A; $a->perform(); echo \Viscle\Viscle::render();
It will render like following:
Requirements
PHP >= 7.1
Xdebug >= php_xdebug-2.7.0alpha1-7.1
License
Viscle is released under the MIT Licence. Check out LICENSE file for more details.