php脚本获得月错误

时间:2012-10-18 17:59:35

标签: php html mysql

  

可能重复:
  Php Current month issue…simple fix

我的网站上有一个statcounter,显示上个月的观看次数和访问次数...但由于某些原因,它只显示到5月份,你可以在这里看到:

http://tinypic.com/r/ea1kjm/6

我不知道什么是错的......

这是我的代码:

$old_month = strtolower(date("m", mktime(date('H'), date('i'), date('s'), (date('m')-12), date('d'), date('Y'))));
$old_year = strtolower(date("Y", mktime(date('H'), date('i'), date('s'), (date('m')-12), date('d'), date('Y'))));

//echo '<p>'.$profile_stats['month'].'</p>';
//echo '<p>'.$old_month.'</p>';
//echo '<p>'.$profile_stats['year'].'</p>';
//echo '<p>'.$old_year.'</p>';

                    if ( $profile_stats['month'] < $old_month && $profile_stats['year'] == $old_year
                    || $profile_stats['month'] == date('m') && $profile_stats['year'] == date('Y') ) {
                    ?>

<?php
                    }
                    else {

                        if ( $profile_stats['month'] == 1 ) {
                        $mname1 = 'January';
                        }
                        elseif ( $profile_stats['month'] == 2 ) {
                        $mname1 = 'Feburary';
                        }
                        elseif ( $profile_stats['month'] == 3 ) {
                        $mname1 = 'March';
                        }
                        elseif ( $profile_stats['month'] == 4 ) {
                        $mname1 = 'April';
                        }
                        elseif ( $profile_stats['month'] == 5 ) {
                        $mname1 = 'May';
                        }
                        elseif ( $profile_stats['month'] == 6 ) {
                        $mname1 = 'June';
                        }
                        elseif ( $profile_stats['month'] == 7 ) {
                        $mname1 = 'July';
                        }
                        elseif ( $profile_stats['month'] == 8 ) {
                        $mname1 = 'August';
                        }
                        elseif ( $profile_stats['month'] == 9 ) {
                        $mname1 = 'September';
                        }
                        elseif ( $profile_stats['month'] == 10 ) {
                        $mname1 = 'October';
                        }
                        elseif ( $profile_stats['month'] == 11 ) {
                        $mname1 = 'November';
                        }
                        elseif ( $profile_stats['month'] == 12 ) {
                        $mname1 = 'December';
                        }

                        if ( $profile_stats['month'] == date('m') && $profile_stats['year'] == date('Y') ) {
                        $mname1 = "<i>Current Month</i> - $mname1";
                        }
                        if ( $profile_stats['month'] == 04 && $profile_stats['year'] == 2012 ) {
                        $newstats_alert = "<p><b style='color: red;'><i>April 2012 stats are only partial due to implementation of this feature mid month.</i></b></p>";
                        }
                        else {
                        $newstats_alert = NULL;
                        }
                    ?>


   <tr>
<td colspan='4' style='border: 2px solid black;'><div align="center"><b><u><?=$mname1?> <?=$profile_stats['year']?></u></b><?=$newstats_alert?></div></td>
    </tr>
 <tr>
<td>Profile Views</td>
<td>Course Views</td>
<td>General Enquiries</td>
<td>Course Enquiries</td>
 </tr>
  <tr>
<td><?=($profile_stats['profile_views'] + 0)?></td>
<td><?=($course_views[$profile_stats['year']."-".$profile_stats['month']] + 0)?></td>
<td><?=($profile_stats['general_enquiries'] + 0)?></td>
<td><?=($course_enquiries[$profile_stats['year']."-".$profile_stats['month']] + 0)?></td>

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

(date('m')-12)通常会返回负值。这可能就是为什么你得到一个奇怪的结果。