Home  >  Article  >  Backend Development  >  php Calender (calendar) code_PHP tutorial

php Calender (calendar) code_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:42:261798browse

The code is as follows:

<span   1</span> <?<span php
</span><span   2</span> <span /*</span><span *
</span><span   3</span> <span  * 
</span><span   4</span> <span  * 我的日历
</span><span   5</span> <span  * date_default_timezone_set date mktime
</span><span   6</span> <span  * @param int $year
</span><span   7</span> <span  * @param int $month
</span><span   8</span> <span  * @param string $timezone
</span><span   9</span> <span  * @author fc_lamp
</span><span  10</span> <span  * @blog: http://www.cnblogs.com/roucheng/
</span><span  11</span>  <span */</span>
<span  12</span> <span function</span> myCalender(<span $year</span> = '', <span $month</span> = '', <span $timezone</span> = 'Asia/Shanghai'<span )
</span><span  13</span> <span {
</span><span  14</span>     
<span  15</span>     date_default_timezone_set ( <span $timezone</span><span  );
</span><span  16</span>     <span $year</span> = <span abs</span> ( <span intval</span> ( <span $year</span><span  ) );
</span><span  17</span>     <span $month</span> = <span abs</span> ( <span intval</span> ( <span $month</span><span  ) );
</span><span  18</span>     
<span  19</span>     <span //</span><span 是否是32位机</span>
<span  20</span>     <span if</span><span  (is32())
</span><span  21</span> <span     {
</span><span  22</span>         <span if</span> (<span $year</span> < 1970 or <span $year</span> >= 2038<span )
</span><span  23</span> <span         {
</span><span  24</span>             <span $year</span> = <span date</span> ( 'Y'<span  );
</span><span  25</span> <span         }
</span><span  26</span>     } <span else</span>
<span  27</span> <span     {
</span><span  28</span>         <span if</span> (<span $year</span> <= 0<span )
</span><span  29</span> <span         {
</span><span  30</span>             <span $year</span> = <span date</span> ( 'Y'<span  );
</span><span  31</span> <span         }
</span><span  32</span>     
<span  33</span> <span     }
</span><span  34</span>     
<span  35</span>     <span if</span> (<span $month</span> <= 0 or <span $month</span> > 12<span )
</span><span  36</span> <span     {
</span><span  37</span>         <span $month</span> = <span date</span> ( 'm'<span  );
</span><span  38</span> <span     }
</span><span  39</span>     
<span  40</span>     <span //</span><span 上一年</span>
<span  41</span>     <span $pretYear</span> = <span $year</span> - 1<span ;
</span><span  42</span>     <span //</span><span 上一月</span>
<span  43</span>     <span $mpYear</span> = <span $year</span><span ;
</span><span  44</span>     <span $preMonth</span> = <span $month</span> - 1<span ;
</span><span  45</span>     <span if</span> (<span $preMonth</span> <= 0<span )
</span><span  46</span> <span     {
</span><span  47</span>         <span $preMonth</span> = 1<span ;
</span><span  48</span>         <span $mpYear</span> = <span $pretYear</span><span ;
</span><span  49</span> <span     }
</span><span  50</span>     
<span  51</span>     <span //</span><span 下一年</span>
<span  52</span>     <span $nextYear</span> = <span $year</span> + 1<span ;
</span><span  53</span>     <span //</span><span 下一月</span>
<span  54</span>     <span $mnYear</span> = <span $year</span><span ;
</span><span  55</span>     <span $nextMonth</span> = <span $month</span> + 1<span ;
</span><span  56</span>     <span if</span> (<span $nextMonth</span> > 12<span )
</span><span  57</span> <span     {
</span><span  58</span>         <span $nextMonth</span> = 1<span ;
</span><span  59</span>         <span $mnYear</span> = <span $nextYear</span><span ;
</span><span  60</span> <span     }
</span><span  61</span>     
<span  62</span>     <span //</span><span 日历头</span>
<span  63</span>     <span $html</span> = <<<<span HTML
</span><span  64</span> <table width="500" border="1">
<span  65</span>   <tr align="center">
<span  66</span>     <td><a href="?y=<span $pretYear</span>">上一年</a></td>
<span  67</span>     <td><a href="?y=<span $mpYear</span>&m=<span $preMonth</span>">上一月</a></td>
<span  68</span>      <td><a href="?">回到今天</a></td>
<span  69</span>     <td><a href="?y=<span $mnYear</span>&m=<span $nextMonth</span>">下一月</a></td>
<span  70</span>     <td><a href="?y=<span $nextYear</span>">下一年</a></td>
<span  71</span>   </tr>
<span  72</span>   <tr align="center">
<span  73</span>     <td colspan="5">{<span $year</span>}年{<span $month</span>}月</td>
<span  74</span>   </tr>
<span  75</span>   <tr>
<span  76</span>       <td colspan="5">
<span  77</span>         <table width="100%" border="1">
<span  78</span>             <tr align="center">
<span  79</span>                 <td  80</span>                 <td  81</span>                 <td  82</span>                 <td  83</span>                 <td  84</span>                 <td  85</span>                 <td  86</span>             </tr>
<span  87</span> <span HTML;
</span><span  88</span>     
<span  89</span>     <span $currentDay</span> = <span date</span> ( 'Y-m-j'<span  );
</span><span  90</span>     
<span  91</span>     <span //</span><span 当月最后一天</span>
<span  92</span>     <span $lastday</span> = <span date</span> ( 'j', <span mktime</span> ( 0, 0, 0, <span $nextMonth</span>, 0, <span $year</span><span  ) );
</span><span  93</span>     
<span  94</span>     <span //</span><span 循环输出天数</span>
<span  95</span>     <span $day</span> = 1<span ;
</span><span  96</span>     <span $line</span> = ''<span ;
</span><span  97</span>     <span while</span> ( <span $day</span> <= <span $lastday</span><span  )
</span><span  98</span> <span     {
</span><span  99</span>         <span $cday</span> = <span $year</span> . '-' . <span $month</span> . '-' . <span $day</span><span ;
</span><span 100</span>         
<span 101</span>         <span //</span><span 当前星期几</span>
<span 102</span>         <span $nowWeek</span> = <span date</span> ( 'N', <span mktime</span> ( 0, 0, 0, <span $month</span>, <span $day</span>, <span $year</span><span  ) );
</span><span 103</span>         
<span 104</span>         <span if</span> (<span $day</span> == 1<span )
</span><span 105</span> <span         {
</span><span 106</span>             <span $line</span> = '<tr align="center">'<span ;
</span><span 107</span>             <span $line</span> .= <span str_repeat</span> ( '<td> </td>', <span $nowWeek</span> - 1<span  );
</span><span 108</span> <span         }
</span><span 109</span>         
<span 110</span>         <span if</span> (<span $cday</span> == <span $currentDay</span><span )
</span><span 111</span> <span         {
</span><span 112</span>             <span $style</span> = ';
</span><span 113</span>         } <span else</span>
<span 114</span> <span         {
</span><span 115</span>             <span $style</span> = ''<span ;
</span><span 116</span> <span         }
</span><span 117</span>         
<span 118</span>         <span $line</span> .= "<td <span $style</span>><span $day</span></td>"<span ;
</span><span 119</span>         
<span 120</span>         <span //</span><span 一周结束</span>
<span 121</span>         <span if</span> (<span $nowWeek</span> == 7<span )
</span><span 122</span> <span         {
</span><span 123</span>             <span $line</span> .= '</tr>'<span ;
</span><span 124</span>             <span $html</span> .= <span $line</span><span ;
</span><span 125</span>             <span $line</span> = '<tr align="center">'<span ;
</span><span 126</span> <span         }
</span><span 127</span>         
<span 128</span>         <span //</span><span 全月结束</span>
<span 129</span>         <span if</span> (<span $day</span> == <span $lastday</span><span )
</span><span 130</span> <span         {
</span><span 131</span>             <span if</span> (<span $nowWeek</span> != 7<span )
</span><span 132</span> <span             {
</span><span 133</span>                 <span $line</span> .= <span str_repeat</span> ( '<td> </td>', 7 - <span $nowWeek</span><span  );
</span><span 134</span> <span             }
</span><span 135</span>             <span $line</span> .= '</tr>'<span ;
</span><span 136</span>             <span $html</span> .= <span $line</span><span ;
</span><span 137</span>             
<span 138</span>             <span break</span><span ;
</span><span 139</span> <span         }
</span><span 140</span>         
<span 141</span>         <span $day</span> ++<span ;
</span><span 142</span> <span     }
</span><span 143</span>     
<span 144</span>     <span $html</span> .= <<<<span HTML
</span><span 145</span>         </table>    
<span 146</span>     </td>
<span 147</span>   </tr>
<span 148</span> </table>
<span 149</span> <span HTML;
</span><span 150</span>     <span return</span> <span $html</span><span ;
</span><span 151</span> <span }
</span><span 152</span> 
<span 153</span> <span /*</span><span *
</span><span 154</span> <span  * 
</span><span 155</span> <span  * 检测是否是32位机
</span><span 156</span> <span  * @author fc_lamp
</span><span 157</span> <span  * @blog: fc-lamp.blog.163.com
</span><span 158</span>  <span */</span>
<span 159</span> <span function</span><span  is32()
</span><span 160</span> <span {
</span><span 161</span>     <span $is32</span> = <span False</span><span ;
</span><span 162</span>     <span if</span> (<span strtotime</span> ( '2039-10-10' ) === <span False</span><span )
</span><span 163</span> <span     {
</span><span 164</span>         <span $is32</span> = <span True</span><span ;
</span><span 165</span> <span     }
</span><span 166</span>     <span return</span> <span $is32</span><span ;
</span><span 167</span> }

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/636693.htmlTechArticleThe code is as follows: ? myCalender( = '', = '', = 'Asia/Shanghai' date_default_timezone_set ( = ( ( = ( ( ( ( ( 1970 or = 2038 = ( 'Y' } ( = 0 = ( 'Y' ( = 0 or 12 = ( 'm' = - 1 = = - 1 ( = 0...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn