The ReflectionParameter::isOptional() function is an inbuilt function in PHP which is used to return TRUE if the specified parameter is optional, otherwise FALSE.
Syntax:
bool ReflectionParameter::isOptional ( void )
Parameters: This function does not accept any parameters.
Return Value: This function returns TRUE if the specified parameter is optional, otherwise FALSE.
Below programs illustrate the ReflectionParameter::isOptional() function in PHP:
Program 1:
<?php // Initializing a user-defined class Company1 class Company1 { function GFG( $Full_Name = neveropen){} } // Initializing a subclass Company2 class Company2 extends Company1 { } // Using the ReflectionParameter over the above class $A = new ReflectionParameter([ 'Company2' , 'GFG' ], 0); // Calling the isOptional() function $B = $A ->isOptional(); // Getting TRUE if the specified parameter // is optional, otherwise FALSE. var_dump( $B ); ?> |
Output:
bool(true)
Program 2:
<?php // Initializing some user-defined classes class Department1 { function HR( $Full_Name ){} } class Department2 { function Coding( $Parameter2 , $Par3 = 'Parameter3' ){} } class Department3 { function Marketing( $Parameter4 , $Parameter5 ){} } // Using the ReflectionParameter over the above classes $A = new ReflectionParameter([ 'Department1' , 'HR' ], 0); $B = new ReflectionParameter([ 'Department2' , 'Coding' ], 1); $C = new ReflectionParameter([ 'Department3' , 'Marketing' ], 1); // Calling the isOptional() function and // getting TRUE if the specified parameter // is optional, otherwise FALSE. var_dump( $A ->isOptional()); var_dump( $B ->isOptional()); var_dump( $C ->isOptional()); ?> |
Output:
bool(false) bool(true) bool(false)
Reference: https://www.php.net/manual/en/reflectionparameter.isoptional.php