function PhpDumper::doExport
17 calls to PhpDumper::doExport()
- PhpDumper::addAliases in vendor/
symfony/ dependency-injection/ Dumper/ PhpDumper.php - PhpDumper::addDeprecatedParameters in vendor/
symfony/ dependency-injection/ Dumper/ PhpDumper.php - PhpDumper::addFileMap in vendor/
symfony/ dependency-injection/ Dumper/ PhpDumper.php - PhpDumper::addInlineReference in vendor/
symfony/ dependency-injection/ Dumper/ PhpDumper.php - PhpDumper::addMethodMap in vendor/
symfony/ dependency-injection/ Dumper/ PhpDumper.php
File
-
vendor/
symfony/ dependency-injection/ Dumper/ PhpDumper.php, line 2240
Class
- PhpDumper
- PhpDumper dumps a service container as a PHP class.
Namespace
Symfony\Component\DependencyInjection\DumperCode
private function doExport(mixed $value, bool $resolveEnv = false) : mixed {
$shouldCacheValue = $resolveEnv && \is_string($value);
if ($shouldCacheValue && isset($this->exportedVariables[$value])) {
return $this->exportedVariables[$value];
}
if (\is_string($value) && str_contains($value, "\n")) {
$cleanParts = explode("\n", $value);
$cleanParts = array_map(fn($part) => var_export($part, true), $cleanParts);
$export = implode('."\\n".', $cleanParts);
}
else {
$export = var_export($value, true);
}
if ($resolveEnv && "'" === $export[0] && $export !== ($resolvedExport = $this->container
->resolveEnvPlaceholders($export, "'.\$container->getEnv('string:%s').'"))) {
$export = $resolvedExport;
if (str_ends_with($export, ".''")) {
$export = substr($export, 0, -3);
if ("'" === $export[1]) {
$export = substr_replace($export, '', 23, 7);
}
}
if ("'" === $export[1]) {
$export = substr($export, 3);
}
}
if ($shouldCacheValue) {
$this->exportedVariables[$value] = $export;
}
return $export;
}