Map的PHP实现<;列表,列表>;

Map的PHP实现<;列表,列表>;,php,arrays,map,Php,Arrays,Map,我需要用PHP设计一个数据结构,在这里我可以将一个值集合映射到另一个值集合。这个用例是用户订阅的映射 array( array('news', 'tech') => array(0, 1), array('news', 'tech', 'gossip') => array(2, 3, 4) ) 这里有没有更优化的设计?在PHP中什么是合适的实现 非常感谢要澄清,用户和订阅之间存在多对多关系,您希望能够快速查找给定用户的订阅,反之亦然 如果是这样,您可以使用一个对象来

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

array(
    array('news', 'tech') => array(0, 1),
    array('news', 'tech', 'gossip') => array(2, 3, 4)
)
这里有没有更优化的设计?在PHP中什么是合适的实现


非常感谢

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


如果是这样,您可以使用一个对象来封装两个多重映射,一个是
User->Array
,另一个是
Subscription->Array
,并通过在其
add
remove
方法中同时更新来维护这两个映射(只需要一个用户和一个订阅作为参数).

因此,您有一个值数组用作新数组的键,然后有一个值数组用作新数组的值?您打算如何使用此数据结构?我假设索引不能是对象/数组,只能是字符串/数字。相反,您可以考虑订阅类似数组('news'=>array(1,3,4)的类别“技术”=>阵列(3,2))