Re: Array difficulty

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 31/07/07, Alister Bulman <abulman@xxxxxxxxx> wrote:
> On 31/07/07, Carlton Whitehead <carlton.whitehead@xxxxxxxxxxxx> wrote:
> >> Couldn't you just do
> >> arsort($chance);
> >> $lastItem = chance[( count( $chance ) - 1 )];
>
> > I tried that earlier, but the problem is:
> > count( $chance ) - 1 ); returns an integer, so I would be asking for something like $chance[1] or $chance[0], neither of which exist in the array.  Keep in mind $chance only has keys with string names:
>
> http://uk3.php.net/current
>
> $chance = array("lowercase" => 27, "uppercase" => 62, "integer" => 46);
> arsort($chance);

max() returns the maximum value of an array.
array_search() finds the key for a value

So all that's needed to find the key of the maximum value is:

$result = array_search(max($chance), $chance);

I'd pretty much guarantee it'll be about an order of magnitude faster
than any solution that relies on sorting the array.

-robin

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux