1. Go to this page and download the library: Download dannykopping/docblock library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
new Parser();
$d->analyze("MyClassName");
$methods = $d->getMethods();
print_r($methods);
new Parser();
$d->analyze("TestClass");
$methods = $d->getMethods();
foreach($methods as $method)
{
$annotations = $method->getAnnotations(array("param"));
foreach ($annotations as $annotation)
{
echo $annotation->getMethod()->name . "\n";
echo $annotation->name . "\n";
echo print_r($annotation->values, true) . "\n";
}
}
class TestClass
{
/**
* This is the DocBlock description
* @param $data The data to be passed in
*/
public function test($data)
{
}
}
test
@param
Array
(
[0] => $data
[1] => The data to be passed in
)
new Parser();
$d->setAllowInherited(true);
$d->setMethodFilter(ReflectionMethod::IS_PUBLIC | ReflectionMethod::IS_PROTECTED);
$d->analyze(array("TestClass", "Parser"));
$classes = $d->getClasses();
foreach ($classes as $class)
{
echo "Class: " . $class->name . "\n";
$methods = $class->getMethods();
foreach ($methods as $method)
{
$annotations = $method->getAnnotations(array("param", "author"));
echo "Method: " . $method->getClass()->name . "::" . $method->name . "\n";
echo "Description: " . $method->description . "\n";
if (empty($annotations))
continue;
foreach ($annotations as $annotation)
{
echo "\tAnnotation: " . $annotation->name . "\n";
echo "\tValues: " . print_r($annotation->values, true) . "\n";
}
echo str_repeat("-", 50) . "\n";
}
}
class BaseClass
{
/**
* Test function 1
*/
public function testFunc1()
{
}
/**
* Test function 2
*/
protected function testFunc2()
{
}
}
class TestClass extends BaseClass
{
/**
* This is the DocBlock description
* @param $data The data to be passed in
*/
public function test($data)
{
}
/**
* This is another DocBlock description
* @param $data The data to be passed in
* @author Danny Kopping
*/
protected function test2($data)
{
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.