<h1 >mktime</h1>
<div class="refnamediv" ><a name="AEN26214" ></a>
<p>(PHP 3, PHP 4, PHP 5)</p>
mktime--取得一个日期的 Unix 时间戳</div>
<div class="refsect1" ><a name="AEN26217" ></a>
<h2>说明</h2>
int<span class="Apple-converted-space"></span><b class="methodname">mktime</b><span class="Apple-converted-space"></span>( [int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]] )<br />
<p>根据给出的参数返回 Unix 时间戳。时间戳是一个长整数,包含了从 Unix 纪元(January 1 1970 00:00:00 GMT)到给定时间的秒数。</p>
<p>参数可以从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。</p>
</div>
<div class="refsect1" ><a name="AEN26245" ></a>
<h2>参数</h2>
<p></p>
<p></p>
<div class="variablelist">
<dl>
<dt><var class="parameter">hour</var></dt>
<dd>
<p>小时数。</p>
</dd>
<dt><var class="parameter">minute</var></dt>
<dd>
<p>分钟数。</p>
</dd>
<dt><var class="parameter">second</var></dt>
<dd>
<p>秒数(一分钟之内)。</p>
</dd>
<dt><var class="parameter">month</var></dt>
<dd>
<p>月份数。</p>
</dd>
<dt><var class="parameter">day</var></dt>
<dd>
<p>天数。</p>
</dd>
<dt><var class="parameter">year</var></dt>
<dd>
<p>年份数,可以是两位或四位数字,0-69 对应于 2000-2069,70-100 对应于 1970-2000。在如今系统中普遍把 time_t 作为一个 32 位有符号整数的情况下,<var class="parameter">year</var><span class="Apple-converted-space"></span>的合法范围是 1901 到 2038 之间,不过此限制自 PHP 5.1.0 起已被克服了。</p>
</dd>
<dt><var class="parameter">is_dst</var></dt>
<dd>
<p>本参数可以设为 1,表示正处于夏时制时间(DST),0 表示不是夏时制,或者 -1(默认值)表示不知道是否是夏时制。如果未知,PHP 会尝试自己搞明白。这可能产生不可预知(但并非不正确)的结果。如果 PHP 运行的系统中启用了 DST 或者<span class="Apple-converted-space"></span><var class="parameter">is_dst</var><span class="Apple-converted-space"></span>设为 1,某些时间是无效的。例如 DST 自 2:00 生效,则所有处于 2:00 到 3:00 之间的时间都无效,<b class="function">mktime()</b><span class="Apple-converted-space"></span>会返回一个未定义(通常为负)的值。某些系统(例如 Solaris 8)的 DST 在午夜生效,则 DST 生效当天的 0:30 会被计算为前一天的 23:30。</p>
<div class="note">
<blockquote class="note">
<p><b>注:<span class="Apple-converted-space"></span></b>自 PHP 5.1.0 起,本参数已被废弃。应该使用新的时区处理特性来替代。</p>
</blockquote>
</div>
</dd>
</dl>
</div>
<p></p>
</div>
<div class="refsect1" ><a name="AEN26289" ></a>
<h2>返回值</h2>
<p><b class="function">mktime()</b><span class="Apple-converted-space"></span>根据给出的参数返回 Unix 时间戳。如果参数非法(例如年,月,日都是零),本函数返回<span class="Apple-converted-space"></span><tt class="constant"><b><font face="NSimsun">FALSE</font></b></tt>(在 PHP 5.1 之前返回<span class="Apple-converted-space"></span><var class="literal">-1</var>)。</p>
</div>
<div class="refsect1" ><a name="AEN26295" ></a>
<h2>更新日志</h2>
<p></p>
<div class="informaltable">
<p></p>
<a name="AEN26298" ></a>
<table border="1" class="CALSTABLE">
<colgroup>
<col />
<col />
</colgroup>
<thead>
<tr>
<th>版本</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td >3.0.10</td>
<td >加入了<span class="Apple-converted-space"></span><var class="parameter">is_dst</var><span class="Apple-converted-space"></span>参数</td>
</tr>
<tr>
<td >5.1.0</td>
<td ><var class="parameter">is_dst</var><span class="Apple-converted-space"></span>参数被废弃。出错时函数返回<span class="Apple-converted-space"></span><tt class="constant"><b><font face="NSimsun">FALSE</font></b></tt><span class="Apple-converted-space"></span>而不再是<span class="Apple-converted-space"></span><var class="literal">-1</var></td>
</tr>
</tbody>
</table>
<p></p>
</div>
<p></p>
</div>
<div class="refsect1" ><a name="AEN26315" ></a>
<h2>范例</h2>
<p></p>
<table border="0" cellpadding="0" cellspacing="0" class="EXAMPLE" width="100%">
<tbody>
<tr>
<td >
<div class="example"><a name="AEN26318" ></a>
<p><b>例子 1.<span class="Apple-converted-space"></span><b class="function">mktime()</b><span class="Apple-converted-space"></span>例子</b></p>
<p><b class="function">mktime()</b><span class="Apple-converted-space"></span>在做日期计算和验证方面很有用,它会自动计算超出范围的输入的正确值。例如下面例子中每一行都会产生字符串 "Jan-01-1998"。</p>
<table bgcolor="#e0e0e0" border="0" cellpadding="5" >
<tbody>
<tr>
<td ><code><font color="#000000"><font face="NSimsun"><font color="#0000bb"><!--?php<br /--> </font><font color="#007700">echo<span class="Apple-converted-space"></span></font><font color="#0000bb">date</font><font color="#007700">(</font><font color="#dd0000">"M-d-Y"</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">mktime</font><font color="#007700">(</font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">12</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">32</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1997</font></font><font face="NSimsun"><font color="#007700">));<br />
echo<span class="Apple-converted-space"></span></font><font color="#0000bb">date</font><font color="#007700">(</font><font color="#dd0000">"M-d-Y"</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">mktime</font><font color="#007700">(</font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">13</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1997</font></font><font face="NSimsun"><font color="#007700">));<br />
echo<span class="Apple-converted-space"></span></font><font color="#0000bb">date</font><font color="#007700">(</font><font color="#dd0000">"M-d-Y"</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">mktime</font><font color="#007700">(</font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1998</font></font><font face="NSimsun"><font color="#007700">));<br />
echo<span class="Apple-converted-space"></span></font><font color="#0000bb">date</font><font color="#007700">(</font><font color="#dd0000">"M-d-Y"</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">mktime</font><font color="#007700">(</font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">1</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">98</font></font><font face="NSimsun"><font color="#007700">));</font><br />
<font color="#0000bb">?></font></font></font></code></td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
<p></p>
<table border="0" cellpadding="0" cellspacing="0" class="EXAMPLE" width="100%">
<tbody>
<tr>
<td >
<div class="example"><a name="AEN26325" ></a>
<p><b>例子 2. 下个月的最后一天</b></p>
<p>任何给定月份的最后一天都可以被表示为下个月的第 "0" 天,而不是 -1 天。下面两个例子都会产生字符串 "The last day in Feb 2000 is: 29"。</p>
<table bgcolor="#e0e0e0" border="0" cellpadding="5" >
<tbody>
<tr>
<td ><code><font color="#000000"><font face="NSimsun"><font color="#0000bb"><!--?php<br /--> $lastday<span class="Apple-converted-space"></span></font><font color="#007700">=<span class="Apple-converted-space"></span></font><font color="#0000bb">mktime</font><font color="#007700">(</font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">3</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">2000</font></font><font face="NSimsun"><font color="#007700">);<br />
echo<span class="Apple-converted-space"></span></font><font color="#0000bb">strftime</font><font color="#007700">(</font><font color="#dd0000">"Last day in Feb 2000 is: %d"</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">$lastday</font></font><font face="NSimsun"><font color="#007700">);</font><br />
<font color="#0000bb">$lastday<span class="Apple-converted-space"></span></font><font color="#007700">=<span class="Apple-converted-space"></span></font><font color="#0000bb">mktime</font><font color="#007700">(</font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">0</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">4</font><font color="#007700">, -</font><font color="#0000bb">31</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">2000</font></font><font face="NSimsun"><font color="#007700">);<br />
echo<span class="Apple-converted-space"></span></font><font color="#0000bb">strftime</font><font color="#007700">(</font><font color="#dd0000">"Last day in Feb 2000 is: %d"</font><font color="#007700">,<span class="Apple-converted-space"></span></font><font color="#0000bb">$lastday</font></font><font face="NSimsun"><font color="#007700">);</font><br />
<font color="#0000bb">?></font></font></font></code></td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="refsect1" ><a name="AEN26329" ></a>
<h2>注释</h2>
<div class="caution">
<p></p>
<table border="1" class="caution" width="100%">
<tbody>
<tr>
<td align="center" ><b>注意</b></td>
</tr>
<tr>
<td align="left" >
<p>在 PHP 5.1.0 之前,在任何已知 Windows 版本以及一些其它系统下不支持负的时间戳。因此年份的有效范围限制为 1970 到 2038。</p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="refsect1" ><a name="AEN26333" ></a>
<h2>参见</h2>
<p></p>
<p></p>
<table border="0" >
<tbody>
<tr>
<td ><a href="mk:@MSITStore:C:Documents%20and%20SettingsAdministrator桌面php手册.chm::/fancy/function.gmmktime.html"><b class="function">gmmktime()</b></a></td>
</tr>
<tr>
<td ><a href="mk:@MSITStore:C:Documents%20and%20SettingsAdministrator桌面php手册.chm::/fancy/function.date.html"><b class="function">date()</b></a></td>
</tr>
<tr>
<td ><a href="mk:@MSITStore:C:Documents%20and%20SettingsAdministrator桌面php手册.chm::/fancy/function.time.html"><b class="function">time()</b></a></td>
</tr>
</tbody>
</table>
<p></p>
<p></p>
</div>