var_export

(PHP 4 >= 4.2.0, PHP 5, PHP 7)
Outputs or returns a parsable string representation of a variable
mixed var_export ( mixed $expression [, bool $return = false ] )

var_export() gets structured information about the given variable. It is similar to var_dump() with one exception: the returned representation is valid PHP code.

Parameters:
expression

The variable you want to export.

return

If used and set to TRUE, var_export() will return the variable representation instead of outputting it.

Returns:

Returns the variable representation when the return parameter is used and evaluates to TRUE. Otherwise, this function will return NULL.

Changelog:
5.1.0

Possibility to export classes and arrays containing classes using the __set_state() magic method.

Notes:

When the return parameter is used, this function uses internal output buffering so it cannot be used inside an ob_start() callback function.

Examples:
var_export() Examples
<?php
$a = array (1, 2, array ("a", "b", "c"));
var_export($a);
?>

The above example will output:

array (
  0 => 1,
  1 => 2,
  2 => 
  array (
    0 => 'a',
    1 => 'b',
    2 => 'c',
  ),
)
<?php

$b = 3.1;
$v = var_export($b, true);
echo $v;

?>

The above example will output:

3.1
Exporting classes since PHP 5.1.0
<?php
class A { public $var; }
$a = new A;
$a->var = 5;
var_export($a);
?>

The above example will output:

A::__set_state(array(
   'var' => 5,
))
Using __set_state() (since PHP 5.1.0)
<?php
class A
{
    public $var1;
    public $var2;

    public static function __set_state($an_array)
    {
        $obj = new A;
        $obj->var1 = $an_array['var1'];
        $obj->var2 = $an_array['var2'];
        return $obj;
    }
}

$a = new A;
$a->var1 = 5;
$a->var2 = 'foo';

eval('$b = ' . var_export($a, true) . ';'); // $b = A::__set_state(array(
                                            //    'var1' => 5,
                                            //    'var2' => 'foo',
                                            // ));
var_dump($b);
?>

The above example will output:

object(A)#2 (2) {
  ["var1"]=>
  int(5)
  ["var2"]=>
  string(3) "foo"
}
See also:

print_r() -

serialize() -

var_dump() -

doc_php
2016-02-24 16:14:02
Comments
Leave a Comment

Please login to continue.