Tjk Posted May 31, 2006 Share Posted May 31, 2006 In the script below what I am trying to do is to create a counter whereby it takes a random variable from the arrays $stats adds it's value (taken from a mysql table and stored in a variable) to a string and then unsets the element so that on the next loop it will not show the value again. But when i try it, it displays more than one of the same element and i'm not sure why. I know it's a simple problem but could anyone point me in the right direction.[code] $numElements = count($stats); $numElements += "1"; $ss= "0"; $stats= array("command", "power", "agility", "knowledge", "acumen", "charisma"); for($i; $i < $numElements; $i++){ $dispstats= array_rand($stats); $disp= $stats[$dispstats]; if($disp == "command"){ $dispfriend= $dispfriend. "-Command: ".$sfcomm."-"; unset($stats['command']); $ss++; } else if($disp == "power"){ $dispfriend= $dispfriend. "-Power: ".$sfpow."-"; unset($stats['power']); $ss++; } else if($disp == "agility"){ $dispfriend= $dispfriend. "-Agility: ".$sfagil."-"; unset($stats['agility']); $ss++; } else if($disp == "knowledge"){ $dispfriend= $dispfriend. "-Knowledge: ".$sfknow."-"; unset($stats['knowledge']); $ss++; } else if($disp == "acumen"){ $dispfriend= $dispfriend. "-Acumen: ".$sffacu."-"; unset($stats['acumen']); $ss++; } else if($disp == "charisma"){ $dispfriend= $dispfriend. "-Charisma: ".$sfchar."-"; unset($stats['charisma']); $ss++; } if($ss == $statview){ break; } }[/code]Help appreciated as always-Tjk Link to comment https://forums.phpfreaks.com/topic/10894-array-unset-bug/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.