logo

マジックメソッドを巡る旅 その9

ヒューマンリソシア株式会社はコラム「マジックメソッドを巡る旅 その9」を公開しました。

###

「serialize() 、unserialize() 経由で__sleep(), __wakeup()のマジックメソッド」、
とうとう本題となります!
ちなみに余談ですが、コラムが60回目になります。干支だと一周回りましたねびっくりです。
改めて、しっかりと頑張っていきたいと思いますので、引き続き宜しくお願いいたします。

さて。
いつもの如く、まずはマジックメソッドが「どんなタイミングで動くのか」を、見ていきましょう。

class hoge {
public function __sleep() {
echo “calling __sleep\n”;
}
public function __wakeup() {
echo “calling __wakeup\n”;
}
public function set_i($i) { $this->i_ = $i; }
public function set_j($i) { $this->j_ = $i; }
//
private $i_;
private $j_;
}
//
$obj = new hoge();
$obj->set_i(10);
$obj->set_j(20);
echo “before call serialize\n”;
$s = serialize($obj);
echo “called serialize\n”;
var_dump($s);
//
echo “before call unserialize\n”;
$obj2 = unserialize($s);
echo “called unserialize\n”;

結果

この続きは以下をご覧ください
リンク

関連情報
http://resocia.jp/
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。