2004-08-03 06:59:58 +08:00
|
|
|
--TEST--
|
2006-03-12 20:38:25 +08:00
|
|
|
ReflectionParameter Check for parameter being optional
|
2004-08-03 06:59:58 +08:00
|
|
|
--FILE--
|
|
|
|
<?php
|
|
|
|
|
|
|
|
class Test {
|
|
|
|
function func($x, $y = NULL){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
$f = new ReflectionMethod('Test', 'func');
|
2004-08-03 07:10:53 +08:00
|
|
|
var_dump($f->getNumberOfParameters());
|
|
|
|
var_dump($f->getNumberOfRequiredParameters());
|
2004-08-03 06:59:58 +08:00
|
|
|
|
|
|
|
$p = new ReflectionParameter(array('Test', 'func'), 'x');
|
|
|
|
var_dump($p->isOptional());
|
|
|
|
|
|
|
|
$p = new ReflectionParameter(array('Test', 'func'), 'y');
|
|
|
|
var_dump($p->isOptional());
|
|
|
|
|
|
|
|
try {
|
|
|
|
$p = new ReflectionParameter(array('Test', 'func'), 'z');
|
|
|
|
var_dump($p->isOptional());
|
|
|
|
}
|
|
|
|
catch (Exception $e) {
|
|
|
|
var_dump($e->getMessage());
|
|
|
|
}
|
|
|
|
|
|
|
|
?>
|
|
|
|
===DONE===
|
|
|
|
--EXPECT--
|
2004-08-03 07:10:53 +08:00
|
|
|
int(2)
|
|
|
|
int(1)
|
2004-08-03 06:59:58 +08:00
|
|
|
bool(false)
|
|
|
|
bool(true)
|
|
|
|
string(54) "The parameter specified by its name could not be found"
|
|
|
|
===DONE===
|