justblackbird/jms-serializer-strict-json

提供严格的JSON反序列化

0.2.0 2017-04-25 15:11 UTC

This package is not auto-updated.

Last update: 2024-09-24 07:13:39 UTC


README

使用严格类型验证反序列化JSON

安装

在命令行中运行

composer require justblackbird/jms-serializer-strict-json

用法

请使用包中的 StrictJsonDeserializationVisitor 而不是JMSSerializer内置的 JsonDeserializationVisitor

例如,如果您使用以下代码实例化JMS序列化器

use JMS\Serializer\SerializerBuilder;

$serializer = SerializerBuilder::create()->build();

您应该将其更改为以下内容

use JMS\Serializer\Naming\CamelCaseNamingStrategy;
use JMS\Serializer\Naming\SerializedNameAnnotationStrategy;
use JMS\Serializer\SerializerBuilder;
use JustBlackBird\JmsSerializerStrictJson\StrictJsonDeserializationVisitor;

$naming_strategy = new SerializedNameAnnotationStrategy(new CamelCaseNamingStrategy());
$serializer = SerializerBuilder::create()
    ->setPropertyNamingStrategy($naming_strategy)
    ->setDeserializationVisitor('json', new StrictJsonDeserializationVisitor($naming_strategy))
    ->build();

然后像以前一样使用序列化器。

许可证

Apache 2.0 (c) Dmitriy Simushev