调用一周之内的信息,如果本周内某天没有发布信息,调用上周的信息:
最终效果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | <?php //生成一个7天的数组 $datearr = array (1,2,3,4,5,6,0); $asno =1; foreach ( $datearr as $v ) { echo '<dd id="week' . $asno . '">' .ret_info(ret_date( $v )). '</dd>' ; //echo '<li>'.date('Y-m-d',ret_date($v)).'</li>'; $asno ++; } //返回日期的时间戳 function ret_date( $val ) { //今天是星期中的第几天 $this_xingqi = date ( 'w' ,time()); $no =0; //如果参数大于几天那么就相减 while ( $this_xingqi != $val ) { $no ++; $this_xingqi = date ( 'w' ,time()-3600*24* $no ); } $this_time =time()-3600*24* $no ; return $this_time ; } //查询当前日期的信息 function ret_info( $time ) { global $empire , $dbtbpre ; //格式化为当前0点 $this_0 = strtotime ( date ( 'Y-m-d' , $time )); //当天 23:59:59 $this_23 = strtotime ( date ( 'Y-m-d' , $time ))+3600*23+60*59+59; $sql = $empire ->fetch1( "select * from {$dbtbpre}ecms_info where newstime between '{$this_0}' and '{$this_23}'" ); if (! $sql ) { $time = $time -3600*24*7; ret_info(); } $str = '<ul>' ; $str_no =1; $sql2 = $empire ->query( "select * from {$dbtbpre}ecms_info where newstime between '{$this_0}' and '{$this_23}' order by onclick desc limit 8" ); while ( $r2 = $empire ->fetch( $sql2 )) { //查关联标题 $gl = $empire ->fetch1( "select * from {$dbtbpre}ecms_list where comicid = '{$r2[comicid]}'" ); $lmurl =sys_ReturnBqTitleLink( $gl ); $titleurl =sys_ReturnBqTitleLink( $r2 ); $str .= '<li><em class="rank rank-' . $str_no . '">' . $str_no . '</em><a href="' . $lmurl . '" title="' . $gl [ 'title' ]. '">' . $gl [ 'title' ]. '</a>[更新<a href="' . $titleurl . '" title="' . $r2 [ 'title' ]. '" class="set">' . $r2 [ 'title' ].'</a>] </li>'; $str_no ++; } $str .= '</ul>' ; return $str ; } ?> |
新闻热点
疑难解答