Reputation: 277
Hi what is the difference between array_shift and unset in associative array?
I understand how in a normal array, if you use array_shift, the key is still there and only the first value goes away but in associative array, I don't see any difference between array_shift and unset.
below is the code example:
$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 )
Upvotes: 2
Views: 2882
Reputation: 1141
array_shift
will return the head of your array (in this instance entry "a")
while unset
will remove an element by its key, say unset($a['b'])
will leave you with Array ( [a] => red [c] => blue )
Upvotes: 1