API를 통해 xml 형식의 일부 데이터를 수집하고이를 객체 목록에서 비 직렬화하고자합니다. Symfony2를 사용하고 JMSSerializerBundle을 찾았지만 사용 방법을 모르겠습니다.Symfony2를 사용하여 xml을 객체에 맞 춥니 다.
나는 Sf2가 객체를 직렬화/역 직렬화 할 수 있다는 것을 알고 있지만 더 구체적인 것을 찾고있다. 예를 들어 는,이 클래스 :
<?xml version="1.0" encoding="UTF-8" ?>
<screenshots>
<screenshot>
<id>1</id>
<url_screenshot>screenshot_url1</url_screenshot>
</screenshot>
<screenshot>
<id>2</id>
<url_screenshot>screenshot_url2</url_screenshot>
</screenshot>
<screenshot>
<id>3</id>
<url_screenshot>screenshot_url3</url_screenshot>
</screenshot>
</screenshots>
정말 Sf2에에 통합하는 통합 뭔가를/사용할
(뭔가 :
class Screenshot
{
/**
* @var integer $id
*/
private $id;
/**
* @var string $url_screenshot
*/
private $url_screenshot;
public function __construct($id, $url_screenshot) {
$this->id = $id;
$this->url_screenshot = $url_screenshot;
}
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set url_screenshot
*
* @param string $urlScreenshot
*/
public function setUrlScreenshot($urlScreenshot)
{
$this->url_screenshot = $urlScreenshot;
}
/**
* Get url_screenshot
*
* @return string
*/
public function getUrlScreenshot()
{
return $this->url_screenshot;
}
/**
* Serializes the Screenshot object.
*
* @return string
*/
public function serialize()
{
return serialize(array(
$this->id,
$this->url_screenshot
));
}
/**
* Unserializes the Screenshot object.
*
* @param string $serialized
*/
public function unserialize($serialized)
{
list(
$this->id,
$this->url_screenshot
) = unserialize($serialized);
}
public function __toString() {
return "id: ".$this->id
."screenshot: ".$this->url_screenshot;
}
}
나는 XML 이런 종류의에서에// 역 직렬화를 직렬화 싶습니다 "부드럽게") 수제 xml 파서를 피하는 것을 선호합니다.
답변 해 주셔서 감사합니다. – Mikolaj
당신은 오신 것을 환영합니다. 당신은 upvoting 그것을 받아 그것을 감사 할 수 :) –
사실, 나는 내 실수 :) :) 내 코멘트가 있습니다 : 답변 주셔서 감사합니다. 실제로 표시된 클래스는 예제 일 뿐이며 2 개의 함수는 간단한 시도입니다. 수제 함수를 사용하여 xml을 serialize/deserialize하고 싶지 않습니다. JMSSerializerBundle은 내가 원하는 것을 제공 할 수 있지만 제대로 사용하지 못했다는 것을 알고 있습니다 ... 특히 JMSSB 사용에 대한 예제 또는 Symfony2를 통해 확장 가능한/"자동으로"수행하는 다른 방법을 찾고 있습니다. – Mikolaj