I'm responsible for creating and maintaining a set of metrics used at my company. These were originally done in excel *shudders*. I eventually saw the light and bought a book on PHP and MySQL. This, as you can imagine, has greatly simplified my life. However, I'm running into a very strange situation.
The following code generates different results when comparing runs in a terminal window and a browser. I have, for days now, tried to figure out what's going on... I've finally resolved to asking the experts for help.
Here's the sample test case I've created:
Code: Select all
<?php
class metricInfo {
var $weekEnd;
}
// setup today
$epoc = gettimeofday();
$today = date('Y-m-d', $epoc['sec']);
// print html header
print "<html>\n";
print "<head>\n";
print"<title>Macallan Bug Metrics v1.0</title>\n";
print "</head>\n";
print "<body>\n";
// just confirm the time...
print "Today is: $today<br>\n";
// get two new instances
$thisWeek = new metricInfo;
$prevWeek = new metricInfo;
// setup today
$thisWeek->weekEnd = $today;
for ($i= 0; $i < 4; $i++){
// tell me what last week was
$date = $epoc['sec'] - (86400 * (7 * ($i+1)));
$prevWeek->weekEnd = date('Y-m-d', $date);
print("debug: i = $i thisWeek: $thisWeek->weekEnd prevWeek: $prevWeek->weekEnd<br>\n");
// last week is now the current week...
$thisWeek = $prevWeek;
print("debug: i = $i thisWeek: $thisWeek->weekEnd prevWeek: $prevWeek->weekEnd<br><br>\n");
}
print "</body>\n";
print "</html>\n";
?>
Code: Select all
Today is: 2008-02-29<br>
debug: i = 0 thisWeek: 2008-02-29 prevWeek: 2008-02-22<br>
debug: i = 0 thisWeek: 2008-02-22 prevWeek: 2008-02-22<br><br>
debug: i = 1 thisWeek: 2008-02-22 prevWeek: 2008-02-15<br>
debug: i = 1 thisWeek: 2008-02-15 prevWeek: 2008-02-15<br><br>
debug: i = 2 thisWeek: 2008-02-15 prevWeek: 2008-02-08<br>
debug: i = 2 thisWeek: 2008-02-08 prevWeek: 2008-02-08<br><br>
debug: i = 3 thisWeek: 2008-02-08 prevWeek: 2008-02-01<br>
debug: i = 3 thisWeek: 2008-02-01 prevWeek: 2008-02-01<br><br>
Code: Select all
Today is: 2008-02-29
debug: i = 0 thisWeek: 2008-02-29 prevWeek: 2008-02-22
debug: i = 0 thisWeek: 2008-02-22 prevWeek: 2008-02-22
debug: i = 1 thisWeek: 2008-02-15 prevWeek: 2008-02-15
debug: i = 1 thisWeek: 2008-02-15 prevWeek: 2008-02-15
debug: i = 2 thisWeek: 2008-02-08 prevWeek: 2008-02-08
debug: i = 2 thisWeek: 2008-02-08 prevWeek: 2008-02-08
debug: i = 3 thisWeek: 2008-02-01 prevWeek: 2008-02-01
debug: i = 3 thisWeek: 2008-02-01 prevWeek: 2008-02-01
Any thoughts or advice... This is killing me.
Thanks.
Brian