Wednesday, June 17, 2026
HomeLanguagesPHP | ReflectionClass export() Function

PHP | ReflectionClass export() Function

The ReflectionClass::export() function is an inbuilt function in PHP which is used to return a string if the parameter has been set to TRUE, otherwise return NULL.

Syntax:

string ReflectionClass::export( mixed $argument, bool $return = FALSE)

Parameters: This function accepts two parameters as mentioned above and described below:

  • $argument: It holds the user-defined class which are to be exported.
  • $return: It is a Boolean value either TRUE or FALSE.

Return Value: This function returns as a string if the parameter has been set to TRUE, otherwise returns NULL.

Below programs illustrate the ReflectionClass::export() function in PHP:

Program 1:




<?php
  
// Defining a user-defined class Company
class Company {
    public $var1 = 'neveropen';
    public $var2 = 'GFG';
  
    public function type() {
        return 'Company';
    }
}
  
// Calling the export function
$A = ReflectionClass::export('Company', $return = TRUE);
  
// Getting the returned value
var_dump($A); 
?>


Output:

string(389) "Class [  class Company ] {
  @@ /home/cg/root/7286175/main.php 4-11

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [2] {
    Property [  public $var1 ]
    Property [  public $var2 ]
  }

  - Methods [1] {
    Method [  public method type ] {
      @@ /home/cg/root/7286175/main.php 8 - 10
    }
  }
}
"

Program 2:




<?php
   
// Calling the export function on inbuilt ReflectionClass
$A = ReflectionClass::export('ReflectionClass');
   
// Getting the returned value
var_dump($A); 
?>


Output:

Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {

  - Constants [3] {
    Constant [ integer IS_IMPLICIT_ABSTRACT ] { 16 }
    Constant [ integer IS_EXPLICIT_ABSTRACT ] { 32 }
    Constant [ integer IS_FINAL ] { 4 }
  }

  - Static properties [0] {
  }

  - Static methods [1] {
    Method [ <internal:Reflection, prototype Reflector> static public method export ] {

      - Parameters [2] {
        Parameter #0 [ <required> $argument ]
        Parameter #1 [ <optional> $return ]
      }
    }
  }

  - Properties [1] {
    Property [ <default> public $name ]
  }

  - Methods [50] {
    Method [ <internal:Reflection> final private method __clone ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection, ctor> public method __construct ] {

      - Parameters [1] {
        Parameter #0 [ <required> $argument ]
      }
    }

    Method [ <internal:Reflection, prototype Reflector> public method __toString ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getName ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isInternal ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isUserDefined ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isAnonymous ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isInstantiable ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isCloneable ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getFileName ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getStartLine ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getEndLine ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getDocComment ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getConstructor ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method hasMethod ] {

      - Parameters [1] {
        Parameter #0 [ <required> $name ]
      }
    }

    Method [ <internal:Reflection> public method getMethod ] {

      - Parameters [1] {
        Parameter #0 [ <required> $name ]
      }
    }

    Method [ <internal:Reflection> public method getMethods ] {

      - Parameters [1] {
        Parameter #0 [ <optional> $filter ]
      }
    }

    Method [ <internal:Reflection> public method hasProperty ] {

      - Parameters [1] {
        Parameter #0 [ <required> $name ]
      }
    }

    Method [ <internal:Reflection> public method getProperty ] {

      - Parameters [1] {
        Parameter #0 [ <required> $name ]
      }
    }

    Method [ <internal:Reflection> public method getProperties ] {

      - Parameters [1] {
        Parameter #0 [ <optional> $filter ]
      }
    }

    Method [ <internal:Reflection> public method hasConstant ] {

      - Parameters [1] {
        Parameter #0 [ <required> $name ]
      }
    }

    Method [ <internal:Reflection> public method getConstants ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getConstant ] {

      - Parameters [1] {
        Parameter #0 [ <required> $name ]
      }
    }

    Method [ <internal:Reflection> public method getInterfaces ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getInterfaceNames ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isInterface ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getTraits ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getTraitNames ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getTraitAliases ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isTrait ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isAbstract ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isFinal ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getModifiers ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isInstance ] {

      - Parameters [1] {
        Parameter #0 [ <required> $object ]
      }
    }

    Method [ <internal:Reflection> public method newInstance ] {

      - Parameters [1] {
        Parameter #0 [ <required> $args ]
      }
    }

    Method [ <internal:Reflection> public method newInstanceWithoutConstructor ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method newInstanceArgs ] {

      - Parameters [1] {
        Parameter #0 [ <optional> array $args ]
      }
    }

    Method [ <internal:Reflection> public method getParentClass ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isSubclassOf ] {

      - Parameters [1] {
        Parameter #0 [ <required> $class ]
      }
    }

    Method [ <internal:Reflection> public method getStaticProperties ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getStaticPropertyValue ] {

      - Parameters [2] {
        Parameter #0 [ <required> $name ]
        Parameter #1 [ <optional> $default ]
      }
    }

    Method [ <internal:Reflection> public method setStaticPropertyValue ] {

      - Parameters [2] {
        Parameter #0 [ <required> $name ]
        Parameter #1 [ <required> $value ]
      }
    }

    Method [ <internal:Reflection> public method getDefaultProperties ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method isIterateable ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method implementsInterface ] {

      - Parameters [1] {
        Parameter #0 [ <required> $interface ]
      }
    }

    Method [ <internal:Reflection> public method getExtension ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getExtensionName ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method inNamespace ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getNamespaceName ] {

      - Parameters [0] {
      }
    }

    Method [ <internal:Reflection> public method getShortName ] {

      - Parameters [0] {
      }
    }
  }
}

NULL

Reference: https://secure.php.net/manual/en/reflectionclass.export.php

RELATED ARTICLES

Most Popular

Dominic
32516 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6898 POSTS0 COMMENTS
Nicole Veronica
12014 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12109 POSTS0 COMMENTS
Shaida Kate Naidoo
7019 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6976 POSTS0 COMMENTS
Umr Jansen
6964 POSTS0 COMMENTS