Re: Re: Array sizes?

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

 



Rory Browne skrev:
At 01:05 AM 2/8/2006, Barry wrote:
I don't think a "function" exists, but i would probably use (for
benchmarking) a recursive foreach in combination with strlen.
And add it all up.
(This is probably some work for the PC so that's why benchmarking)

It would be interesting to know whether that method was faster or
slower than using this:

         $iLen = strlen(implode("", $aArray));



the problem I would have with the above code would be that it assumes
you're  using a single dimention array.

Recursive foreach:

function array_size($a){
    $size = 0;
    while(list($k, $v) = each($a)){
        $size += is_array($v) ? array_size($v) : strlen($v);
    }
    return $size;
}

This could possibly be optimised even more by using references or something
like that.

eg
foreach(array_keys($a) as $k){
    size = is_array($a[$k]) =& array_size($a[$k]) : strlen($a[$k])

But I think that for the most part your time programming will be more
important than the programs time running.



Exactly what I was looking for.. :)  Thanks!
I personally don't need this at runtime, only at design time, just to help setting limits etc for the running app when testing.

--
Anders Norrbring
Norrbring Consulting

--
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