在Java的Map和List中搜索PHP等价物?

时间:2012-05-15 09:38:12

标签: java php list map

在Java案例#1中:

Map m1 = new LinkedHashMap();
List l1 = new LinkedList();
m1.put("key1","val1");
m1.put("key2","val2");
l1.add(m1);

在java案例#2中

List l1 = new LinkedList();
l1.add("val1");
l1.add("val2");
l1.add("val3");

这些案例在PHP中有什么用?

3 个答案:

答案 0 :(得分:2)

在PHP中,arrays充当所有类型的容器。它们可以用作地图,列表和集合。

链接列表功能通过reset / prev / current / next / end函数提供;请查看文档的“另请参阅”部分,以确保您不会错过任何文档。

对于地图功能,您只需直接索引到数组;但请记住,PHP中的数组键只能 是字符串或整数,并且大多数时候在同一个数组中混合两者都不是正确的事情(尽管没有技术原因)不要,并且有些情况下有意义。)

SPL提供了SplDoublyLinkedList类,但是没有任何内容可以让一个简单的数组也不能给你。

答案 1 :(得分:1)

通常你会在两种情况下使用数组:

在PHP案例#1中:

$m1 = array();
$l1 = array();
$m1['key1'] = 'val1';
$m1['key2'] = 'val2';
$l1[] = $m1;

在PHP案例#2中

$l1 = array();
$l1[] = "val1";
$l1[] = "val2";
$l1[] = "val3";

然后,要浏览列表中的元素,您可以使用foreachreset/prev/current/next/end一组函数。

如果使用PHP5,您还可以查看SPL数据结构。

答案 2 :(得分:0)

即使array是PHP中使用最多的类型,如果使用PHP 5,也应该查看SPL。

使用SPL:

  • 队列
  • 链表
  • 等......

Manual