【发布时间】:2016-12-08 21:58:53
【问题描述】:
你好,关联数组中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 )
【问题讨论】:
-
array_shift()专门用于将元素从数组的开头移动并返回。unset()取消设置一个变量。阅读文档 - php.net/manual/en/function.array-shift.php - php.net/manual/en/function.unset.php -
你是对的,两个版本都实现了相同的目标。有时有几种方法可以达到一个结果。
标签: php arrays associative-array unset