Map <list,list =“”> </list,>的PHP实现

时间:2014-04-11 06:18:34

标签: php arrays map

我需要在PHP中设计一个数据结构,我可以将一组值映射到另一个值集合。用例是用户订阅的地图。

array(
    array('news', 'tech') => array(0, 1),
    array('news', 'tech', 'gossip') => array(2, 3, 4)
)

我们可以在这里使用更优化的设计吗?在PHP中适当的实现是什么?

非常感谢

1 个答案:

答案 0 :(得分:0)

为了澄清,用户和订阅之间存在多对多关系,您是否希望能够快速查找给定用户的订阅,反之亦然?

如果是这样,您可以使用的一个设计是一个对象,它封装了两个多图,一个是User -> Array<Subscription>,另一个是Subscription -> Array<User>,并通过更新来维护这两个地图它们同时使用addremove方法(只需要一个用户和一个订阅作为参数)。