统一访问对象

发布于 2024-11-03 02:42:23 字数 166 浏览 0 评论 0原文

这个问题基于 facebook graph api...facebook 能够从单个 URI 访问对象(用户、页面、事件)...(graph.facebook.com/ID)。我如何使用 neo4J 来完成此任务?我的计划是将每个节点类型(用户、页面、事件)包装在一个 php 对象中,然后统一访问所有对象......

This question is base on the facebook graph api...facebook is able to access objects (User, Page, Event) from a single URI...(graph.facebook.com/ID). How can I accomplish this using and neo4J? my plan is wrap each node type(User, Page, Event) in a php object then access all objects uniformly....

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

冰火雁神 2024-11-10 02:42:23

如果我理解正确的话,您希望有一种统一的方式对一组不同类型的对象执行常见操作?

要在 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();
}

If I understand you correctly, you want to have a uniform way to perform common operations on a set of objects of different type?

To do that in PHP, I would do two things - write an interface that defines the common operations, and then write proxy classes that, just like you mention, wrap the original objects and implement the interface.

For example, if you have these classes:

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 

}

You could write an interface and two proxy classes like this:

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();
  }
}

And then you can write code that operates on the FacebookObject proxy:

function getFacebookId(FacebookObject $obj) {
  return $obj->getId();
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文