<?php
class Test {
public function Test1(int $number, string $str) { }
public function Test2(bool $boolean) { }
public function Test3($value) { }
}
//get the information of the class.
$rf = new ReflectionClass('Test');
//run through all methods.
foreach ($rf->getMethods() as $method) {
echo $method->name."\n";
//run through all parameters of the method.
foreach ($method->getParameters() as $parameter) {
echo "\t".'Name: '.$parameter->getName().' - Type: '.$parameter->getType()."\n"; }
}
PD9waHAKY2xhc3MgVGVzdCB7CiAgICBwdWJsaWMgZnVuY3Rpb24gVGVzdDEoaW50ICRudW1iZXIsIHN0cmluZyAkc3RyKSB7ICB9CglwdWJsaWMgZnVuY3Rpb24gVGVzdDIoYm9vbCAkYm9vbGVhbikgeyAgfQogICAgcHVibGljIGZ1bmN0aW9uIFRlc3QzKCR2YWx1ZSkgeyAgfQp9CgovL2dldCB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIGNsYXNzLgokcmYgPSBuZXcgUmVmbGVjdGlvbkNsYXNzKCdUZXN0Jyk7CgovL3J1biB0aHJvdWdoIGFsbCBtZXRob2RzLgpmb3JlYWNoICgkcmYtPmdldE1ldGhvZHMoKSBhcyAkbWV0aG9kKSB7CiAgICBlY2hvICRtZXRob2QtPm5hbWUuIlxuIjsKCQoJLy9ydW4gdGhyb3VnaCBhbGwgcGFyYW1ldGVycyBvZiB0aGUgbWV0aG9kLgoJZm9yZWFjaCAoJG1ldGhvZC0+Z2V0UGFyYW1ldGVycygpIGFzICRwYXJhbWV0ZXIpIHsKCSAgICBlY2hvICJcdCIuJ05hbWU6ICcuJHBhcmFtZXRlci0+Z2V0TmFtZSgpLicgLSBUeXBlOiAnLiRwYXJhbWV0ZXItPmdldFR5cGUoKS4iXG4iOwoJfQp9