The ReflectionParameter::canBePassedByValue() function is an inbuilt function in PHP which is used to return TRUE if the parameter can be passed by value, otherwise returns FALSE.
Syntax:
bool ReflectionParameter::canBePassedByValue( void )
Parameters: This function does not accept any parameter.
Return Value: This function returns TRUE if the parameter can be passed by value, otherwise returns FALSE.
Below programs illustrate the ReflectionParameter::canBePassedByValue() function in PHP:
Program 1:
<?php // Initializing a user-defined class Company1 class Company1 { public function GFG( $Parameter ){} } // Initializing a subclass Company2 class Company2 extends Company1 { } // Using the ReflectionParameter over the above class $A = new ReflectionParameter([ 'Company2' , 'GFG' ], 0); // Calling the canBePassedByValue() function $B = $A ->canBePassedByValue(); // Getting the boolean value TRUE if the // parameter can be passed by value, // otherwise returns FALSE. var_dump( $B ); ?> |
Output:
bool(true)
Program 2:
<?php // Initializing some user-defined classes class Department1 { protected function HR( $Parameter1 ){} } class Department2 { final function Coding( Exception $Parameter2 , Exception $Parameter3 ){} } class Department3 { function Marketing( $Parameter4 , $Parameter5 , $Parameter6 ){} } // Using the ReflectionParameter over the above classes $A = new ReflectionParameter([ 'Department1' , 'HR' ], 0); $B = new ReflectionParameter([ 'Department2' , 'Coding' ], 1); $C = new ReflectionParameter([ 'Department3' , 'Marketing' ], 2); // Calling the canBePassedByValue() function and // getting the boolean value TRUE if the // parameter can be passed by value, // otherwise returns FALSE. var_dump( $A ->canBePassedByValue()); var_dump( $B ->canBePassedByValue()); var_dump( $C ->canBePassedByValue()); ?> |
Output:
bool(true) bool(true) bool(true)
Reference: https://secure.php.net/manual/en/reflectionparameter.canbepassedbyvalue.php