/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/DependencyInjection/Reference.php
55 строк
1 KB
Nicolas Grekas
[DependencyInjection][FrameworkBundle] Use php-serialize to dump the container for debug/lint commands
02 июн 2025, 11:57
02 июн 2025, 11:57
c128f55
Код
Авторство
О чём код?
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DependencyInjection; /** * Reference represents a service reference. * * @author Fabien Potencier <fabien@symfony.com> */ class Reference { public function __construct( private string $id, private int $invalidBehavior = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, ) { } public function __toString(): string { return $this->id; } /** * Returns the behavior to be used when the service does not exist. */ public function getInvalidBehavior(): int { return $this->invalidBehavior ??= ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE; } public function __serialize(): array { $data = []; foreach ((array) $this as $k => $v) { if (false !== $i = strrpos($k, "\0")) { $k = substr($k, 1 + $i); } if ('invalidBehavior' === $k && ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE === $v) { continue; } $data[$k] = $v; } return $data; } }