Final Class Yiisoft\VarDumper\VarDumper
| Inheritance | Yiisoft\VarDumper\VarDumper |
|---|
VarDumper provides enhanced versions of the PHP functions {@see var_dump()} and {@see var_export()}.
It can:
- Correctly identify the recursively referenced objects in a complex object structure.
- Recursively control depth to avoid indefinite recursive display of some peculiar variables.
- Export closures and objects.
- Highlight output.
- Format output.
Public Methods
| Method | Description | Defined By |
|---|---|---|
| asJson() | Dumps a variable as a JSON string. | Yiisoft\VarDumper\VarDumper |
| asPrimitives() | Dumps the variable as PHP primitives in JSON decoded style. | Yiisoft\VarDumper\VarDumper |
| asString() | Dumps a variable in terms of a string. | Yiisoft\VarDumper\VarDumper |
| create() | Yiisoft\VarDumper\VarDumper | |
| dump() | Prints a variable. | Yiisoft\VarDumper\VarDumper |
| export() | Exports a variable as a string containing PHP code. | Yiisoft\VarDumper\VarDumper |
| getDefaultHandler() | Yiisoft\VarDumper\VarDumper | |
| setDefaultHandler() | Yiisoft\VarDumper\VarDumper | |
| withOffset() | Sets offset string to use to indicate nesting level. | Yiisoft\VarDumper\VarDumper |
Constants
| Constant | Value | Description | Defined By |
|---|---|---|---|
| DEPTH_LIMIT_EXCEEDED_PROPERTY | '$__depth_limit_exceeded__$' | Yiisoft\VarDumper\VarDumper | |
| OBJECT_CLASS_PROPERTY | '$__class__$' | Yiisoft\VarDumper\VarDumper | |
| OBJECT_ID_PROPERTY | '$__id__$' | Yiisoft\VarDumper\VarDumper | |
| VAR_TYPE_ARRAY | 'array' | Yiisoft\VarDumper\VarDumper | |
| VAR_TYPE_OBJECT | 'object' | Yiisoft\VarDumper\VarDumper | |
| VAR_TYPE_PROPERTY | '$__type__$' | Yiisoft\VarDumper\VarDumper | |
| VAR_TYPE_RESOURCE | 'resource' | Yiisoft\VarDumper\VarDumper |
Method Details
Dumps a variable as a JSON string.
This method provides similar functionality to the {@see \Yiisoft\VarDumper\json_encode()} but is more robust when handling complex objects.
| public string asJson ( boolean $format = true, integer $depth = 10 ) | ||
| $format | boolean |
Use whitespaces in returned data to format it |
| $depth | integer |
Maximum depth that the dumper should go into the variable. Defaults to 10. |
| return | string |
The json representation of the variable. |
|---|---|---|
| throws | JsonException | |
public function asJson(bool $format = true, int $depth = 10): string
{
/** @var mixed $output */
$output = $this->asPrimitives($depth);
if ($format) {
return json_encode($output, JSON_THROW_ON_ERROR | JSON_PRETTY_PRINT);
}
return json_encode($output, JSON_THROW_ON_ERROR);
}
Dumps the variable as PHP primitives in JSON decoded style.
| public mixed asPrimitives ( integer $depth = 10 ) | ||
| $depth | integer |
Maximum depth that the dumper should go into the variable. Defaults to 10. |
| throws | ReflectionException | |
|---|---|---|
public function asPrimitives(int $depth = 10): mixed
{
return $this->exportPrimitives($this->variable, $depth, 0);
}
Dumps a variable in terms of a string.
This method achieves the similar functionality as {@see \Yiisoft\VarDumper\var_dump()} and {@see \Yiisoft\VarDumper\print_r()} but is more robust when handling complex objects.
| public string asString ( integer $depth = 10 ) | ||
| $depth | integer |
Maximum depth that the dumper should go into the variable. Defaults to 10. |
| return | string |
The string representation of the variable. |
|---|---|---|
| throws | ReflectionException | |
public function asString(int $depth = 10): string
{
return $this->dumpInternal($this->variable, true, $depth, 0);
}
| public static Yiisoft\VarDumper\VarDumper create ( mixed $variable ) | ||
| $variable | mixed |
Variable to dump. |
| return | Yiisoft\VarDumper\VarDumper |
An instance containing variable to dump. |
|---|---|---|
public static function create(mixed $variable): self
{
return new self($variable);
}
Prints a variable.
This method achieves the similar functionality as {@see \Yiisoft\VarDumper\var_dump()} and {@see \Yiisoft\VarDumper\print_r()} but is more robust when handling complex objects.
| public static void dump ( mixed $variable, integer $depth = 10, boolean $highlight = true ) | ||
| $variable | mixed |
Variable to be dumped. |
| $depth | integer |
Maximum depth that the dumper should go into the variable. Defaults to 10. |
| $highlight | boolean |
Whether the result should be syntax-highlighted. |
| throws | ReflectionException | |
|---|---|---|
public static function dump(mixed $variable, int $depth = 10, bool $highlight = true): void
{
self::getDefaultHandler()->handle($variable, $depth, $highlight);
}
Exports a variable as a string containing PHP code.
The string is a valid PHP expression that can be evaluated by PHP parser and the evaluation result will give back the variable value.
This method is similar to {@see \Yiisoft\VarDumper\var_export()}. The main difference is that it generates more compact string representation using short array syntax.
It also handles closures with {@see \Yiisoft\VarDumper\ClosureExporter} and objects by using the PHP functions {@see \Yiisoft\VarDumper\serialize()} and {@see \Yiisoft\VarDumper\unserialize()}.
| public string export ( boolean $format = true, string[] $useVariables = [], boolean $serializeObjects = true ) | ||
| $format | boolean |
Whatever to format code. |
| $useVariables | string[] |
Array of variables used in |
| $serializeObjects | boolean |
If it is true all objects will be serialized except objects with closure(s). If it is false only objects of internal classes will be serialized. |
| return | string |
A PHP code representation of the variable. |
|---|---|---|
| throws | ReflectionException | |
public function export(bool $format = true, array $useVariables = [], bool $serializeObjects = true): string
{
$this->useVarInClosures = $useVariables;
$this->serializeObjects = $serializeObjects;
return $this->exportInternal($this->variable, $format, 0);
}
| public static Yiisoft\VarDumper\HandlerInterface getDefaultHandler ( ) |
public static function getDefaultHandler(): HandlerInterface
{
return self::$defaultHandler ??= new EchoHandler();
}
| public static void setDefaultHandler ( Yiisoft\VarDumper\HandlerInterface $handler ) | ||
| $handler | Yiisoft\VarDumper\HandlerInterface | |
public static function setDefaultHandler(HandlerInterface $handler): void
{
self::$defaultHandler = $handler;
}
Sets offset string to use to indicate nesting level.
| public Yiisoft\VarDumper\VarDumper withOffset ( string $offset ) | ||
| $offset | string |
The offset string. |
| return | Yiisoft\VarDumper\VarDumper |
New instance with a given offset. |
|---|---|---|
public function withOffset(string $offset): self
{
$new = clone $this;
$new->offset = $offset;
return $new;
}
Signup or Login in order to comment.