मैं JSON मैन्युअल रूप से JMSSerializerBundle के साथ desirialize करना चाहता हूँ। मुझे हैंडलर कॉलबैक के साथ कुछ परेशानी मिली। यहां एक कोड है:जेएमएस सीरियलाइज़र मैन्युअल रूप से क्रमबद्धता को कैसे संभालें?
namespace Company\Bundle\Model;
use JMS\Serializer\Annotation\Type;
use JMS\Serializer\Annotation\SerializedName;
use JMS\Serializer\Annotation\HandlerCallback;
use JMS\Serializer\JsonDeserializationVisitor;
use JMS\Serializer\DeserializationContext;
use JMS\Serializer\TypeParser;
use JMS\Serializer\Serializer;
class Blog
{
protected $blogName;
protected $blogUrl;
protected $blogCategory;
/**
* @Type("array<Company\Bundle\Model\Post>")
* @SerializedName("data")
*/
protected $posts;
/**
* @param mixed $posts
*/
public function setPosts($posts)
{
$this->posts = $posts;
}
/**
* @return mixed
*/
public function getPosts()
{
return $this->posts;
}
/**
* @HandlerCallback("json", direction = "deserialization")
*/
public function deserializeFromJson(JsonDeserializationVisitor $visitor, array $data, DeserializationContext $context)
{
$this->blogName = $data['data'][0]['blogName'];
$this->blogUrl = $data['data'][0]['blogUrl'];
$this->blogCategory = $data['data'][0]['blogCategory'];
$this->posts = ????;
}
}
मुझे इसके बजाय क्या जोड़ना चाहिए ???? वस्तु कंपनी \ बंडल \ मॉडल \ पोस्ट की सरणी प्राप्त करने के लिए
केवल सरकारी उदाहरण/प्रलेखन यहां हैं: https://github.com/schmittjoh/serializer/blob/master/tests/JMS/Serializer/Tests/Fixtures/Article.php – Damien