在 symfony 4 中使用未定义常量 XML_PI_NODE

Cag*_*son 7 php symfony

我在 php7.2 中遇到此错误。我用的是symfony4。

Warning: Use of undefined constant XML_PI_NODE - assumed 'XML_PI_NODE' (this will throw an Error in a future version of PHP)
Run Code Online (Sandbox Code Playgroud)

这是错误行。

in var/cache/dev/ContainerIZRQnYa/getSerializerService.php (line 55)
return $this->services['serializer'] = new \Symfony\Component\Serializer\Serializer([0 => new \Symfony\Component\Serializer\Normalizer\JsonSerializableNormalizer(), 1 => new \Symfony\Component\Serializer\Normalizer\DateTimeNormalizer(), 2 => new \Symfony\Component\Serializer\Normalizer\ConstraintViolationListNormalizer(), 3 => new \Symfony\Component\Serializer\Normalizer\DateIntervalNormalizer(), 4 => new \Symfony\Component\Serializer\Normalizer\DataUriNormalizer(), 5 => new \Symfony\Component\Serializer\Normalizer\ArrayDenormalizer(), 6 => new \Symfony\Component\Serializer\Normalizer\ObjectNormalizer($a, new \Symfony\Component\Serializer\NameConverter\MetadataAwareNameConverter($a), new \Symfony\Component\PropertyAccess\PropertyAccessor(false, false, new \Symfony\Component\Cache\Adapter\ArrayAdapter(0, false)), NULL, new \Symfony\Component\Serializer\Mapping\ClassDiscriminatorFromClassMetadata($a))], [0 => new \Symfony\Component\Serializer\Encoder\XmlEncoder(), 1 => new \Symfony\Component\Serializer\Encoder\JsonEncoder(), 2 => new \Symfony\Component\Serializer\Encoder\YamlEncoder(), 3 => new \Symfony\Component\Serializer\Encoder\CsvEncoder()]);
Run Code Online (Sandbox Code Playgroud)

我已经清除了缓存并且之前已经设置了所有权限。我应该怎么办?

mic*_*doo 10

我遇到了同样的问题,我使用 PHP XML 安装了

sudo apt install php7.4-xml

但仍然得到它。我跑后它就消失了:

install zlib1g-dev libxml2-dev

  • `sudo apt install phpX.X-xml ` 应该足够了,不需要安装zlib1g。如果未修复,请尝试 `sudo a2dismod phpX.X` `sudo systemctl restart apache2` `sudo a2enmod php XX ` `sudo systemctl restart apache2` (3认同)