Variable handling Funciones
PHP Manual

var_export

(PHP 4 >= 4.2.0, PHP 5)

var_exportImprime o devuelve una representación de cadena de una variable analizable

Descripción

mixed var_export ( mixed $expression [, bool $return = false ] )

var_export() obtiene información estructurada sobre la variable dada. Es similar a la función var_dump() con una excepción: la representación devuelta es código PHP válido.

Parámetros

expression

La variable que desea exportar.

return

Si es usada y se define como TRUE, var_export() devolverá la representación de la variable en lugar de imprimirla.

Note:

Esta función utiliza salida de búfer interno en este parámetro por lo tanto no puede usarse dentro de una función de retorno ob_start().

Valores devueltos

Devuelve la representación de la variable cuando el parámetro return es utilizado y evaluado como TRUE. En caso contrario, esta función devolverá NULL.

Historial de cambios

Versión Descripción
5.1.0 Posibilidad de exportar las clases y las matrices que contienen las clases utilizando el __set_state método mágico.

Ejemplos

Example #1 Ejemplos var_export()

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

El resultado del ejemplo sería:

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

$b 
3.1;
$v var_export($btrue);
echo 
$v;

?>

El resultado del ejemplo sería:

3.1

Example #2 Exportación de clases a partir de PHP 5.1.0

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

El resultado del ejemplo sería:

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

Example #3 Uso de __set_state (a partir de PHP 5.1.0)

<?php
class A
{
    public 
$var1;
    public 
$var2;

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

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

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

El resultado del ejemplo sería:

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

Notas

Note:

Las variables de tipo resource no pueden ser exportadas por esta función.

Note:

var_export() no maneja referencias circulares as it would be close to impossible to generate parsable PHP code for that.ya que sería prácticamente imposible generar código PHP interpretable en tal caso. Si desea trabajar con la representación completa de una matriz u objeto, use serialize().

Ver también


Variable handling Funciones
PHP Manual