Jump to content

Archived

This topic is now archived and is closed to further replies.

mausie

Reading arrays in function

Recommended Posts

Hi all,

I'm reading out a database to get the total worked time of people on a month. I got this code I use on every single table(alot):

[code]$arraycount = -1;
$timetotal = 0;

foreach ( $query['DATUM'] as $date)
{
   
    $arraycount = $arraycount + 1;         
           
      $sub = substr($date,3,2);
   
      if ($sub == '01' && $query['TIMECLASSID'][$arraycount] == 3)
      {
      $timetotal = $timetotal +  $query['CALCTIME'][$arraycount];
      }
 
}

print $timetotal; [/code]
This works fine,even tho I thought it would be much easier to make an function for this because it's alot of code doing this for like 30 tables. so I made:
[code]
function monthtotal($mon,$timeclass)
{
$arraycount = -1;
$timetotal = 0;
 
foreach ( $query['DATUM'] as $date)
{
   
    $arraycount = $arraycount + 1;         
           
      $sub = substr($date,3,2);
   
      if ($sub == $mon && $query['TIMECLASSID'][$arraycount] == $timeclass)
      {
      $timetotal = $timetotal +  $query['CALCTIME'][$arraycount];
      }
 
}
return $timetotal;
}[/code]

But i get Invalid argument in foreach() everytime I use this function. Because, of what I think it can't read the $query. But why is this?
Could any1 help me? That would be great

Maurice

Share this post


Link to post
Share on other sites
You need to pass the $query array into the function. Eg;

[code=php:0]
function monthtotal($mon,$timeclass,$query)
[/code]

Share this post


Link to post
Share on other sites
Darn that's some logic thinking I've missed.
Many thanks for your help and extremely fast reply!

grtz

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.