APIを使用してxml形式のデータを収集し、オブジェクトリストで逆シリアル化したいと思います。 私はSymfony2を使用してJMSSerializerBundleを見つけましたが、実際の使用方法はわかりません。xmlをSymfony2でオブジェクトに逆シリアル化する
私は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 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の中に統合する/統合何か(何かを使用したいです"スムース")、手作りのXMLパーサを避けることを好む。
ご回答ありがとうございます。 – Mikolaj
あなたは大歓迎です。あなたはそれをupvotingして受け入れることによって私に感謝することができます:) –
実際には、私は私のショットが欠けて:)ここに私のコメントです:あなたの答えをありがとう。実際に表示されるクラスは単なる例であり、2つの関数は単純な試行です。私は手作りの関数でxmlにシリアル化/デシリアライズしたくない。私はJMSSerializerBundleが私が望むものを提供できることは知っていますが、正しく使用することに成功しませんでした...私は特にJMSSBの使用例やSymfony2を使ってスケーラブルな "自動"の別の方法を探しています。 – Mikolaj