<?php
class Root {
public $domainList = array();
public function addDomain($domainName)
{
$domain = new Domain($domainName);
$this->domainList[$domainName] = $domain;
}
}
class Domain {
public $domainName = null;
public $memberList = array();
public function __construct($domainName) {
$this->domainName = $domainName;
}
public function addMember($email, $orders, $value) {
$member = new Member($this->domainName, $email, $orders, $value);
$this->memberList[$email] = $member;
}
public function getMember($memberName) {
return $this->memberList[$memberName];
}
}
class Member {
public $domain = null;
public $email = null;
public $orders = null;
public $value = null;
public function __construct($domain, $email, $orders, $value) {
$this->domain = $domain;
$this->email = $email;
$this->orders = $orders;
$this->value = $value;
}
public function getDomain() {
return $this->domain;
}
}
$root = new Root();
$root->addDomain("hotmail.com");
$root->addDomain("gmail.com");
$root->domainList["hotmail.com"]->addMember("john.doe",1,12);
$root->domainList["hotmail.com"]->addMember("jessie.anderson",1,12);
$root->domainList["hotmail.com"]->addMember("paul.whitney",1,12);
$root->domainList["gmail.com"]->addMember("alexis",1,12);
print_r($root->domainList["hotmail.com"]->getMember("john.doe")); ?>
PD9waHAgCmNsYXNzIFJvb3QgewoJCglwdWJsaWMgJGRvbWFpbkxpc3QgPSBhcnJheSgpOwoJCglwdWJsaWMgZnVuY3Rpb24gYWRkRG9tYWluKCRkb21haW5OYW1lKQoJewoJCSRkb21haW4gPSBuZXcgRG9tYWluKCRkb21haW5OYW1lKTsKCQkkdGhpcy0+ZG9tYWluTGlzdFskZG9tYWluTmFtZV0gPSAkZG9tYWluOwoJfQp9CgpjbGFzcyBEb21haW4gewoJCglwdWJsaWMgJGRvbWFpbk5hbWUgPSBudWxsOwoJcHVibGljICRtZW1iZXJMaXN0ID0gYXJyYXkoKTsKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRkb21haW5OYW1lKSB7CgkJJHRoaXMtPmRvbWFpbk5hbWUgPSAkZG9tYWluTmFtZTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIGFkZE1lbWJlcigkZW1haWwsICRvcmRlcnMsICR2YWx1ZSkgewoJCSRtZW1iZXIgPSBuZXcgTWVtYmVyKCR0aGlzLT5kb21haW5OYW1lLCAkZW1haWwsICRvcmRlcnMsICR2YWx1ZSk7CgkJJHRoaXMtPm1lbWJlckxpc3RbJGVtYWlsXSA9ICRtZW1iZXI7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBnZXRNZW1iZXIoJG1lbWJlck5hbWUpIHsKCQlyZXR1cm4gJHRoaXMtPm1lbWJlckxpc3RbJG1lbWJlck5hbWVdOwoJfQp9CgpjbGFzcyBNZW1iZXIgewoJCglwdWJsaWMgJGRvbWFpbiA9IG51bGw7CglwdWJsaWMgJGVtYWlsID0gbnVsbDsKCXB1YmxpYyAkb3JkZXJzID0gbnVsbDsKCXB1YmxpYyAkdmFsdWUgPSBudWxsOwoJCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGRvbWFpbiwgJGVtYWlsLCAkb3JkZXJzLCAkdmFsdWUpIHsKCQkkdGhpcy0+ZG9tYWluID0gJGRvbWFpbjsKCQkkdGhpcy0+ZW1haWwgPSAkZW1haWw7CgkJJHRoaXMtPm9yZGVycyA9ICRvcmRlcnM7CgkJJHRoaXMtPnZhbHVlID0gJHZhbHVlOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gZ2V0RG9tYWluKCkgewoJCXJldHVybiAkdGhpcy0+ZG9tYWluOwoJfQoKfQoKJHJvb3QgPSBuZXcgUm9vdCgpOwoKJHJvb3QtPmFkZERvbWFpbigiaG90bWFpbC5jb20iKTsKJHJvb3QtPmFkZERvbWFpbigiZ21haWwuY29tIik7CiRyb290LT5kb21haW5MaXN0WyJob3RtYWlsLmNvbSJdLT5hZGRNZW1iZXIoImpvaG4uZG9lIiwxLDEyKTsKJHJvb3QtPmRvbWFpbkxpc3RbImhvdG1haWwuY29tIl0tPmFkZE1lbWJlcigiamVzc2llLmFuZGVyc29uIiwxLDEyKTsKJHJvb3QtPmRvbWFpbkxpc3RbImhvdG1haWwuY29tIl0tPmFkZE1lbWJlcigicGF1bC53aGl0bmV5IiwxLDEyKTsKJHJvb3QtPmRvbWFpbkxpc3RbImdtYWlsLmNvbSJdLT5hZGRNZW1iZXIoImFsZXhpcyIsMSwxMik7CgpwcmludF9yKCRyb290LT5kb21haW5MaXN0WyJob3RtYWlsLmNvbSJdLT5nZXRNZW1iZXIoImpvaG4uZG9lIikpOwo/Pg==