ZAČÁTKYNÁVODYOOPDOKUMENTACE

PHP funkce var_export()

07. 10. 2019

Obsah článku

Dostupné od verze: `PHP 4.2.0`

Funkce vrátí string, který reprezentuje vloženou proměnnou jako kdyby byla napsána v PHP scriptu. Výstup lze rovnou použít pro PHP parser.

Parametry

Parametr Datový typ Výchozí hodnota Poznámka
$expression mixed není Proměnná s daty, které chceme exportovat.
$return bool null Pokud je true, funkce hodnotu parametru vrátí, místo toho, aby se rovnou použila.

Návratové hodnoty

mixed

Funkce vrátí reprezentaci vložené proměnné, pokud byl druhý parametr true.

Pokud byl druhý parametr false, funkce vrátí vždy hodnotu null.

Příklad dumpování pole

Mějme vstup:

$a = [1, 2, ['a', 'b', 'c']];
var_export($a);

Vrátí:

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

Dumpování složitějších objektů a formátování

Často je potřeba dumpovat (exportovat) objekty s velmi sloužitou strukturou, nebo dokonce vygenerovat celou PHP třídu podle zadání.

Dobře k tomu slouží balík PhpGenerator, který je přímo součástí Nette framework.

Použití je jednoduché:

$class = new Nette\PhpGenerator\ClassType('Demo');
$class
->setFinal()
->setExtends('ParentClass')
->addImplement('Countable')
->addTrait('Nette\SmartObject')
->addComment("Popis třídy.\nDruhý řádek\n")
->addComment('@property-read Nette\Forms\Form $form');
// kód jednoduše vygenerujete přetypováním na řetězec nebo použitím echo:
echo $class;

Vygeneruje:

/**
* Popis třídy
* Druhý řádek
*
* @property-read Nette\Forms\Form $form
*/
final class Demo extends ParentClass implements Countable
{
use Nette\SmartObject;
}

Dumpování konstant a polí v proměnných:

$class->addConstant('ID', 123);
$class->addProperty('items', [1, 2, 3])
->setVisibility('private')
->setStatic()
->addComment('@var int[]');

Vygeneruje:

const ID = 123;

/** @var int[] */
private static $items = [1, 2, 3];

Další příklady jsou v oficiální dokumentaci.

Další zdroje

[Oficiální dokumentace funkce var-export](- Oficiální manuál pro var_export)

Jan Barášek   Více o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Související články

1.

Potřebujete poradit s PHP?

Nabízím trénink vývojářů, konzultace, školení a analýzu návrhových vzorů. Osobně v Praze nebo online.

Napište mi, pokud si nevíte rady.

Lektor: Jan Barášek

V jiných jazycích