php array_shift vs在关联数组中取消设置

时间:2016-08-03 09:09:28

标签: php arrays associative-array unset

你好,关联数组中的array_shift和unset有什么区别?

我理解在普通数组中,如果使用array_shift,键仍然存在,只有第一个值消失,但在关联数组中,我看不出array_shift和unset之间有任何区别。

下面是代码示例:

    $a=array("a"=>"red","b"=>"green","c"=>"blue");
    $key=key($a);
    unset($a[$key]);
    print_r ($a);

    //result: Array ( [b] => green [c] => blue )

    $b=array("a"=>"red","b"=>"green","c"=>"blue");
    array_shift($b);
    print_r ($b);

    //result: Array ( [b] => green [c] => blue )

1 个答案:

答案 0 :(得分:1)

array_shift将返回数组的头部(在此实例条目中" a")

虽然unset会按键删除元素,但unset($a['b'])会留下Array ( [a] => red [c] => blue )

相关问题