Руководство по PHP
Пред. |  | След.

# var_export

(PHP 4 >= 4.2.0, PHP 5)

var_export -- Outputs or returns a parsable string representation of a variable

## Описание

mixed var_export ( mixed expression [, bool return] )

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.

## Список параметров

expression

  The variable you want to export.

return

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

  > Замечание: This function internally uses the output buffering with this parameter so it can not be used inside ob_start() callback function.

## Возвращаемые значения

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

## Список изменений

Версия | Описание
--- | ---
5.1.0 | Possibility to export classes and arrays containing classes using the __set_state magic method.

## Примеры

Пример 1. var_export() Examples

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

Результат выполнения данного примера:

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

`<?php $b = 3.1; $v = var_export($b, true); echo $v; ?>`

Результат выполнения данного примера:

    3.1

Пример 2. Exporting classes since PHP 5.1.0

`<?php class A { public $var; } $a = new A; $a->var = 5; var_export($a); ?>`

Результат выполнения данного примера:

    A::__set_state(array(
       'var' => 5,
    ))

Пример 3. 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); ?>`

Результат выполнения данного примера:

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

## Примечания

> Замечание: Variables of type resource couldn't be exported by this function.

## Смотрите также

var_dump()
print_r()

Пред. | Начало | След.
var_dump | Уровень выше | Verisign Payflow Pro Functions