2012-10-01 27 views
17

मुझे सिद्धांत संग्रह के क्रमबद्ध संग्रह को deserializing के साथ एक समस्या है। उस और किसी भी विषय के बारे में दस्तावेज़ नहीं मिल सका और मैं जेएमएसएसरियलाइज़र के साथ नया हूं। जब मैं के साथ deserialize की कोशिश:JMSSerializer deserializing संग्रह

$collection = $serializer->deserialize($jsonData,'Doctrine\Common\Collections\ArrayCollection','json'); 

$ संग्रह खाली

जब मैं मैं परिणाम पर Assoc सरणी है वर्ग के नाम के स्थान पर शून्य पर सेट है। क्या उस जेसन को deserialize करने के लिए एक शानदार तरीका है?

संपादित करें: क्षमा करें। यहां क्रमबद्ध संग्रह है:

[{"id":88,"name":"Poland","created_at":"2012-09-28T11:59:06+0000"},{"id":90,"name":"Great Britain","created_at":"2012-09-28T11:59:06+0000"}] 
+0

क्या आप सीरियललाइज्ड 'ऐरेकोलेक्शन' के जेसन को प्रश्न में पेस्ट कर सकते हैं? –

उत्तर

43

हां! मैंने जो गलत किया वह मिला :) मैंने विधि गलत तरीके से deserialize करने के लिए दिया। होना चाहिए:

$serializer->deserialize($jsonData, 'ArrayCollection<EntityName>', 'json'); 

और यह मुझे संस्थाओं की सुंदर श्रृंखला प्रदान करता है।

+0

आपको यह समाधान कहां मिला? केवल प्रयोग द्वारा – tolgap

+2

। दुर्भाग्यवश कोई दस्तावेज़ नहीं मिला लेकिन ऐसा लगता है कि deserialize विधि टाइप तर्क तर्क के रूप में ले सकते हैं जैसा कि यहां उदाहरण के लिए परिभाषित किया गया है: [प्रकार] (http://jmsyst.com/bundles/JMSSerializerBundle/master/reference/annotations#type) – mrMantir

+0

बस मैं क्या को ढूंढ रहा था। समाधान खोजने के लिए धन्यवाद! – Casey

संबंधित मुद्दे