chubbyphp/chubbyphp-serialization
最新稳定版本:4.1.0
Composer 安装命令:
composer require chubbyphp/chubbyphp-serialization
包简介
Chubbyphp Serialize
README 文档
README
Description
A simple serialization.
DEPRECATED: No personal interest anymore. Please take a look to chubbyphp-parsing its a different concept. But i believe parsing is the way to go instead of deserialze/validate.
Requirements
- php: ^8.2
- chubbyphp/chubbyphp-decode-encode: ^1.2
- doctrine/inflector: ^1.4.4|^2.0.10
- psr/http-message: ^1.1|^2.0
- psr/link: ^1.1.1|^2.0.1
- psr/log: ^2.0|^3.0.2
Suggest
- chubbyphp/chubbyphp-container: ^2.2
- pimple/pimple: ^3.5
- psr/container: ^2.0.2
- symfony/config: ^5.4.46|^6.4.14|^7.2 (symfony integration)
- symfony/dependency-injection: ^5.4.46|^6.4.14|^7.2 (symfony integration)
Installation
Through Composer as chubbyphp/chubbyphp-serialization.
composer require chubbyphp/chubbyphp-serialization "^4.1"
Usage
Accessor
Encoder
Type Encoder
Link
Normalizer
Field Normalizer
Relation Field Normalizer
- EmbedManyFieldNormalizer
- EmbedOneFieldNormalizer
- ReferenceManyFieldNormalizer
- ReferenceOneFieldNormalizer
Link Normalizer
Normalizer Context
NormalizerObjectMappingRegistry
Mapping
NormalizationFieldMapping
NormalizationLinkMapping
NormalizationObjectMapping
LazyNormalizationObjectMapping
Policy
ServiceFactory
chubbyphp-container
chubbyphp-laminas-config-factory
ServiceProvider
Serializer
<?php use Chubbyphp\DecodeEncode\Encoder\Encoder; use Chubbyphp\DecodeEncode\Encoder\JsonTypeEncoder; use Chubbyphp\DecodeEncode\Encoder\JsonxTypeEncoder; use Chubbyphp\DecodeEncode\Encoder\UrlEncodedTypeEncoder; use Chubbyphp\DecodeEncode\Encoder\XmlTypeEncoder; use Chubbyphp\DecodeEncode\Encoder\YamlTypeEncoder; use Chubbyphp\Serialization\Normalizer\Normalizer; use Chubbyphp\Serialization\Normalizer\NormalizerObjectMappingRegistry; use Chubbyphp\Serialization\Serializer; use MyProject\Serialization\ModelMapping; use MyProject\Model\Model; use Psr\Http\Message\ServerRequestInterface; $logger = ...; $serializer = new Serializer( new Normalizer( new NormalizerObjectMappingRegistry([ new ModelMapping() ]), $logger ), new Encoder([ new JsonTypeEncoder(), new JsonxTypeEncoder(), new UrlEncodedTypeEncoder(), new XmlTypeEncoder(), new YamlTypeEncoder() ]) ); $model = new Model; $model->setName('php'); $json = $serializer->serialize( $model, 'application/json' ); echo $json; // '{"name": "php"}' $model = new Model; $model->setName('php'); $data = $serializer->normalize( $model ); print_r($data); // ['name' => 'php'] print_r($serializer->getContentTypes()); //[ // 'application/json', // 'application/jsonx+xml', // 'application/x-www-form-urlencoded', // 'application/xml', // 'application/x-yaml' //] echo $serializer->encode( ['name' => 'php'], 'application/json' ); // '{"name": "php"}'
Copyright
2025 Dominik Zogg
统计信息
- 总下载量: 51.67k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 26
- 点击次数: 0
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-08-01