php数组解析

前言:        
    php的数组是一直非常强大的数据类型, 它的功能包含了常规的数据结构中array, map, set, Linked List 等等, 具体使用时可根据不同的功能需求而使用对应的函数组合

1.作为数组使用: 索引数组

     定义: $arr = ['foo1', 'foo2', 'foo3']

     追加元素: $arr[] = 'foo4'

     删除元素: unset($arr[1])

     遍历数据 : for($i=0, $len = count($arr); $i<$len; $i++){}

                或  forearch($arr as $val) {}

2.作为map使用: 关联数组

    定义: $arr= ['key1' => 'val1', 'key2' => ]

    追加元素: $arr['key3'] = 'val3'

    删除元素: unset($arr[key1])

    遍历数组: forearch($arr as $key => $val) {}

3.作为set使用: 作为集合使用

    定义: $arr = ['foo1', 'foo2', 'foo3']

    添加元素: $arr[] = 'foo4'

    移除元素: unset($arr[array_search['foo1', $arr]]) 或 $arr = array_diff($arr, ['foo4'])

    判断元素在集合中: in_array('foo4', $arr)

    取差集: $arr_new = array_diff($arr1, $arr2)

    取并集: $arr_new = array_merge($arr1, $arr2)

    取交集:  $arr_new = array_intersect($arr1, $arr2)

4.作为list使用

    头进: array_unshift($arr, $val)

    头出: array_shift($arr, $val)

    尾进: array_push($arr, $val)

    尾出:  array_pop($arr)

结尾:

    以上只是最简单的使用场景, 更多的时候一个php数组是多种数据结构的混合应用, 这样可以更好的将注意力集中在功能的实现,而非对数据结构本身的选择和设计.

你可能感兴趣的:(php-基础)