php中博客日历实现代码
分享一款php中博客日历实现代码,里面有一句是查询数据库的这个很简单,只要你修改一下字段名与你数据库相同就行了,实例代码如下:
function calendarnew( $starttime = 0) { global $db , $tablepre , $timestamp , $site_timeoffset , $site_dateformat , $curtime ; $starttime = $starttime ? $starttime : $timestamp ; $curtime = gmdate ( $site_dateformat , $starttime + $timeoffset * 3600); $pendtime = $starttime - ( gmdate ( 'j' , $starttime + $timeoffset * 3600) - 1) * 86400 - ( $starttime + $timeoffset * 3600) % 86400; $pstarttime = $pendtime - gmdate ( 't' , $pendtime + $timeoffset * 3600 - 1) * 86400; $nstarttime = $pendtime + gmdate ( 't' , $pendtime + $timeoffset * 3600 + 1) * 86400; $nendtime = $nstarttime + gmdate ( 't' , $nstarttime + $timeoffset * 3600 + 1) * 86400; list( $skip , $dim ) = explode ( '-' , gmdate ( 'w-t' , $pendtime + $timeoffset * 3600 + 1)); $rows = ceil (( $skip + $dim ) / 7); $blogs = array (); $query = $db ->query( "SELECT dateline FROM {$tablepre}vitaitems WHERE dateline BETWEEN '$pendtime' AND '$nstarttime'" ); while ( $blog = $db ->fetch_array( $query )) { $day = gmdate ( 'j' , $blog [ 'dateline' ] + $timeoffset * 3600); !isset( $blogs [ $day ]) ? $blogs [ $day ] = array ( 'num' => 1, 'dateline' => $blog [ 'dateline' ] - $blog [ 'dateline' ] % 86400) : $blogs [ $day ][ 'num' ]++; } $cal = '' ; for ( $row = 0; $row < $rows ; $row ++) { $cal .= '<tr align="center" class="smalltxt">' ; for ( $col = 0; $col < 7; $col ++) { $cur = $row * 7 + $col - $skip + 1; $curtd = $row * 7 + $col < $skip || $cur > $dim ? ' ' : $cur ; if (!isset( $blogs [ $cur ])) { $cal .= '<td>' . $curtd . '</td>' ; } else { $cal .= '<td><a href="blog.php?uid=' . $uid . '&starttime=' . $blogs [ $cur ][ 'dateline' ]. '&endtime=' .( $blogs [ $cur ][ 'dateline' ] + 86400). '" title=" ' . $blogs [ $cur ][ 'num' ]. ' "><b>' . $cur . '</b></a></td>' ; } } $cal .= '' ; } return $cal ; }查看更多关于php中博客日历实现代码 - php函数的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did30866