The ReflectionMethod::export() function is an inbuilt function in PHP which is used to return the export as a string if the return parameter has been set to TRUE, otherwise NULL is returned. Syntax:
string ReflectionMethod::export ( $class, $name, $return )
Parameters: This function accepts three parameters as mentioned above and described below:
- class: This is the name of the initialized class.
- name: This is the name of the method.
- return: It’s value is either TRUE or FALSE. Using TRUE will return the export whereas using FALSE will do the opposite.
Return Value: This function returns the export as a string if the return parameter has been set to TRUE, otherwise NULL is returned. Below programs illustrate the ReflectionMethod::export() function in PHP: Program_1:
php
<?php // Initializing a user-defined class class Company { protected function neveropen( $name ) { return 'GFG' . $name ; } } // Using ReflectionMethod() over the class Company $A = new ReflectionMethod( new Company(), 'neveropen' ); // Calling the export() function $B = $A ->export( 'Company' , 'neveropen' , $return = TRUE ); // Getting the export as a string if the // return parameter has been set to TRUE, // otherwise NULL is returned. var_dump( $B ); ?> |
Output:
string(171) "Method [ <user> protected method neveropen ] { @@ /home/cd1a603457d3beda20350155354b4363.php 6 - 8 - Parameters [1] { Parameter #0 [ <required> $name ] } } "
Program_2:
php
<?php // Initializing some user-defined classes class Department1 { protected function HR( $name ) { return 'hr' . $name ; } } class Department2 { protected function Coding( $name ) { return 'coding' . $name ; } } class Department3 { protected function Marketing( $name ) { return 'marketing' . $name ; } } // Using ReflectionMethod() over the above classes $A = new ReflectionMethod( new Department1(), 'HR' ); $B = new ReflectionMethod( new Department2(), 'Coding' ); $C = new ReflectionMethod( new Department3(), 'Marketing' ); // Calling the export() function and // Getting the export as a string if the // return parameter has been set to TRUE, // otherwise NULL is returned. var_dump( $A ->export( 'Department1' , 'HR' , $return = TRUE )); var_dump( $B ->export( 'Department2' , 'Coding' , $return = FALSE )); var_dump( $C ->export( 'Department3' , 'Marketing' , $return = FALSE )); ?> |
Output:
string(160) "Method [ <user> protected method HR ] { @@ /home/b1fa43e2f382f32d60abd4370db4a4f6.php 6 - 8 - Parameters [1] { Parameter #0 [ <required> $name ] } } " Method [ <user> protected method Coding ] { @@ /home/b1fa43e2f382f32d60abd4370db4a4f6.php 12 - 14 - Parameters [1] { Parameter #0 [ <required> $name ] } } NULL Method [ <user> protected method Marketing ] { @@ /home/b1fa43e2f382f32d60abd4370db4a4f6.php 18 - 20 - Parameters [1] { Parameter #0 [ <required> $name ] } } NULL
Reference: https://www.php.net/manual/en/reflectionmethod.export.php