我在反序列化学说集合的序列化集合时遇到问题.找不到关于那个和任何主题的文档,我是JMSSerializer的新手.当我尝试反序列化:
$collection = $serializer->deserialize($jsonData,'Doctrine\Common\Collections\ArrayCollection','json');
Run Code Online (Sandbox Code Playgroud)
$ collection是空的
当我设置为null而不是类名时,我在结果上有关联数组.是否有一种优雅的方式来反序列化json?
编辑:抱歉.这是序列化的集合:
[{"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"}]
Run Code Online (Sandbox Code Playgroud) 我在使用组序列化具有许多关系的实体时遇到问题.我有这样一个序列化相关实体的问题.
假设我有两个实体:产品和相关元素.
/**
*
* @Serializer\ExclusionPolicy("none")
*/
class Product {
/**
* Primary key
* @var integer $id
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*
* @Serializer\Groups({"list","details"})
* @Serializer\Type("integer")
*/
protected $id;
/**
* @Serializer\Groups({"list","details"})
* @Serializer\Type("string")
*/
protected $name;
/**
* @ORM\Column(name="description", type="string", length=4096, nullable=true)
*
* @Serializer\Groups({"details"})
* @Serializer\Type("string")
*/
protected $description;
/**
* @var ArrayCollection
*
* @ORM\OneToMany(targetEntity="Madden\ProjectBundle\Entity\ProjectResource", mappedBy="project")
* @Serializer\Groups({"details"})
* @Serializer\Type("ArrayCollection<Element>")
*/
protected $details1;
/**
* Relation to project tasks
* @ORM\OneToMany(targetEntity="Madden\ProjectBundle\Entity\ProjectTask", mappedBy="project") …Run Code Online (Sandbox Code Playgroud) 编写功能测试和DOMCrawler时遇到问题.我的问题是通过链接抓取邮件内容.从文档中我看到可以使用html内容作为参数创建爬虫.所以这是我的代码块:
$mailCrawler = new Crawler($message->getBody());
$linkCrawler = $mailCrawler->selectLink('Link name');
$client->click($linkCrawler->link());
Run Code Online (Sandbox Code Playgroud)
在第三行,我有一个例外,因为$ linkCrawler有空的$ uri字段.异常消息:
InvalidArgumentException: Current URI must be an absolute URL ("").
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我为什么爬虫不能获得该链接?
我只能告诉$ message var getBody方法返回正确的内容.
问候