这个问题是基于api...facebook能够从单个URI(Graph.facebook.com/ID)访问对象(用户、页面、事件)的facebook图。我如何使用和neo4J来实现这一点?我的计划是将每个节点类型(User、Page、Event)封装在一个php对象中,然后统一访问所有对象。
发布于 2011-04-26 17:59:07
如果我理解正确的话,您希望有一种统一的方法来对一组不同类型的对象执行通用操作吗?
要在PHP中做到这一点,我需要做两件事--编写一个定义公共操作的接口,然后编写代理类,就像您提到的那样,包装原始对象并实现接口。
例如,如果您有以下类:
class User {
public function getId() {
// Return some id
}
// Other user-specific stuff here
}
class Event {
public function getId() {
// Return some id
}
// Other user-specific stuff here
}您可以编写一个接口和两个代理类,如下所示:
interface FacebookObject {
public function getId();
}
class UserProxy implements FacebookObject {
function __construct($user) {
$this->user = $user;
}
function getId() {
return $this->user->getId();
}
}
class EventProxy implements FacebookObject {
function __construct($event) {
$this->event = $event;
}
function getId() {
return $this->event->getId();
}
}然后,您可以编写在FacebookObject代理上运行的代码:
function getFacebookId(FacebookObject $obj) {
return $obj->getId();
}https://stackoverflow.com/questions/5760199
复制相似问题