Json Symfony2 HHVM 3.4序列化程序问题
我们正在HHVM上测试Symfony2API。我们只返回控制器中的php对象,这些对象将被序列化为Json 每个对象都有一个配置文件,我们在其中定义要公开的数据。在PHP5.4/5.5/5.6上,一切运行正常,但在HVVM上,序列化程序忽略序列化程序配置文件。它只是序列化所有属性Json Symfony2 HHVM 3.4序列化程序问题,json,symfony,serialization,hhvm,Json,Symfony,Serialization,Hhvm,我们正在HHVM上测试Symfony2API。我们只返回控制器中的php对象,这些对象将被序列化为Json 每个对象都有一个配置文件,我们在其中定义要公开的数据。在PHP5.4/5.5/5.6上,一切运行正常,但在HVVM上,序列化程序忽略序列化程序配置文件。它只是序列化所有属性 { "simple_products":{ "_new": false, "_deleted": false, "modified_columns":[]
{
"simple_products":{
"_new": false,
"_deleted": false,
"modified_columns":[],
"virtual_columns":[],
"id": "3556",
"daytime_id": "1",
"name": "Banane",
"value": 123,
"peer": null,
"start_copy": false,
"day_id": "11561",
"created_at": "2015-01-13 17:36:38",
"updated_at": "2015-01-13 17:36:38",
"created_by": "3505",
"updated_by": "3505",
"a_day": null,
"a_daytime": null,
"already_in_save": false,
"already_in_validation": false,
"already_in_clear_all_references_deep": false,
"validation_failures":[]
}
}
而不仅仅是
{
"simple_products":{
"id": "4181",
"daytime_id": "1",
"name": "Banane",
"value": 123
}
}
有人知道该怎么做吗?如果您需要配置文件,请随时询问
更新(jms/序列化程序配置)
我认为您正在使用jms序列化程序使用注释序列化对象。HHVM正在忽略docblocks中的注释。尝试在xml中定义序列化规则:
这是什么样的序列化程序?图书馆?你自己的?它是如何读取配置文件的?嘿,是jms/序列化程序。我将在主帖子中推送config。尝试在jms_序列化程序配置中设置json_编码选项位掩码。可能HHVM使用了其他默认值。:(不,和以前一样。我将更新上面的配置。还有其他想法吗?:”(似乎序列化程序希望每个对象都有另一个配置文件。没有hvvm,他只需要基本逻辑:Model.Module.Entity.om.BaseEntity,现在还需要扩展基类的Model.Module.Entity.Entity.:)(
# jms serializer config
jms_serializer:
property_naming:
lower_case: true
metadata:
cache: file
debug: "%kernel.debug%"
file_cache:
dir: "%kernel.cache_dir%/serializer"
auto_detection: true
directories:
propel:
namespace_prefix: ""
path: "@FooRestBundle/Resources/config/serializer"
visitors:
json:
options: 0