krtv/yii2-jms-serializer
最新稳定版本:2.0.1
Composer 安装命令:
composer require krtv/yii2-jms-serializer
包简介
JMS Serializer extension for the Yii framework
README 文档
README
This extension provides a Serializer component, that would allow you to use JMS Serializer library
with Yii framework 2.0.
JMSSerializer allows you to (de-)serialize data of any complexity. Currently, this extension supports JSON and XML.
It also provides you with a rich tool-set to adapt the output to your specific needs.
Built-in features include:
- (De-)serialize data of any complexity; circular references are handled gracefully.
- Supports many built-in PHP types (such as dates)
- Supports versioning, e.g. for APIs
- Configurable via PHP, XML and YAML
For license information check the LICENSE-file.
Documentation is at docs/guide/README.md.
Install
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist krtv/yii2-jms-serializer
or add
"krtv/yii2-jms-serializer": "~2.0.0"
to the require section of your composer.json.
Usage
To use this extension, simply add the following code in your application configuration:
return [ // ... 'components' => [ 'serializer' => [ 'class' => 'krtv\yii2\serializer\Serializer', 'formats' => [ 'json', // XML is also available to use. // 'xml', ], // Uncomment if you would like to use handlers: http://jmsyst.com/libs/serializer/master/handlers // // 'handlers' => [ // 'datetime' => [ // 'defaultFormat' => 'c', // ISO8601 // ], // 'my_handler' => [ // 'class' => 'app\\serializer\\handler\\MyHandler', // ], // // ... // ], // Uncomment if you would like to use different naming strategy for properties. // "camel_case" is a default one. Available strategies are: "camel_case", "identical" and "custom". // // 'namingStrategy' => [ // 'name' => 'camel_case', // 'options' => [ // 'separator' => '_', // 'lowerCase' => true, // ], // ], // Uncomment if you would like to configure class-metadata or enable cache. // // 'metadata' => [ // 'cache' => true, // 'directories' => [ // [ // 'namespace' => 'Foo\\Bar', // 'alias' => '@app/config/serializer/foo/bar', // ], // // ... // ] // ], ], // ... ], // ... ];
Now you can access to an krtv\yii2\serializer\Serializer instance through \Yii::$app->serializer or \Yii::$container->get('serializer').
Data serialization:
echo $serializer->serialize(['foo' => 'bar'], 'json'); // {"foo": "bar"}
统计信息
- 总下载量: 11.34k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 8
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-10-05