|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2001-09-09 09:40 UTC] sterling@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Nov 08 05:00:02 2025 UTC |
Using 'unset($array[$index])' yields incorrect results. For example, ... $test[0] = "2" $test[1] = "1" $test["count"] = 2; This simulates what is returned by several LDAP functions. If you echo this array OR call 'count' on it, all looks fine. Now ... unset($test["count"]); This removes the "count" entry. So far so good. If you echo this array OR call 'count' on it, it still looks fine. Now ... sort($test); This sorts the array but the array is now hosed. The first element appears to be a "null" element and the second element is "1". The "2" element is either no longer addressable in the array OR doesn't exist in the array at all. It appears that 'unset' doesn't TRULY remove an element from an array but merely marks it as logically deleted. Is this the way it's supposed to work? If so, how can I TRULY delete an array element? Thanks for a GREAT product!