Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > 05cd670d8a02b2b4a0ffb1756f2e8308 > files > 2562

php-manual-zh-5.2.4-1mdv2008.1.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>mktime</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="PHP 手册"
HREF="index.html"><LINK
REL="UP"
TITLE="Date/Time 日期/时间函数"
HREF="ref.datetime.html"><LINK
REL="PREVIOUS"
TITLE="microtime"
HREF="function.microtime.html"><LINK
REL="NEXT"
TITLE="strftime"
HREF="function.strftime.html"><META
HTTP-EQUIV="Content-type"
CONTENT="text/html; charset=UTF-8"></HEAD
><BODY
CLASS="refentry"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>PHP 手册</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="function.microtime.html"
ACCESSKEY="P"
>上一页</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="function.strftime.html"
ACCESSKEY="N"
>下一页</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="function.mktime"
></A
>mktime</H1
><DIV
CLASS="refnamediv"
><A
NAME="AEN29674"
></A
><P
>    (PHP 3, PHP 4, PHP 5)</P
>mktime&nbsp;--&nbsp;取得一个日期的 Unix 时间戳</DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29677"
></A
><H2
>说明</H2
>int <B
CLASS="methodname"
>mktime</B
> ( [int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]] )<BR
></BR
><P
>&#13;   根据给出的参数返回 Unix 时间戳。时间戳是一个长整数,包含了从
   Unix 纪元(January 1 1970 00:00:00 GMT)到给定时间的秒数。
  </P
><P
>&#13;   参数可以从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29705"
></A
><H2
>参数</H2
><P
>&#13;   <P
></P
><DIV
CLASS="variablelist"
><DL
><DT
><CODE
CLASS="parameter"
>hour</CODE
></DT
><DD
><P
>&#13;       小时数。
      </P
></DD
><DT
><CODE
CLASS="parameter"
>minute</CODE
></DT
><DD
><P
>&#13;       分钟数。
      </P
></DD
><DT
><CODE
CLASS="parameter"
>second</CODE
></DT
><DD
><P
>&#13;       秒数(一分钟之内)。
      </P
></DD
><DT
><CODE
CLASS="parameter"
>month</CODE
></DT
><DD
><P
>&#13;       月份数。
      </P
></DD
><DT
><CODE
CLASS="parameter"
>day</CODE
></DT
><DD
><P
>&#13;       天数。
      </P
></DD
><DT
><CODE
CLASS="parameter"
>year</CODE
></DT
><DD
><P
>&#13;       年份数,可以是两位或四位数字,0-69 对应于 2000-2069,70-100
       对应于 1970-2000。在如今系统中普遍把 time_t 作为一个 32
       位有符号整数的情况下,<CODE
CLASS="parameter"
>year</CODE
>
       的合法范围是 1901 到 2038 之间,不过此限制自
       PHP 5.1.0 起已被克服了。
      </P
></DD
><DT
><CODE
CLASS="parameter"
>is_dst</CODE
></DT
><DD
><P
>&#13;       本参数可以设为 1,表示正处于夏时制时间(DST),0
       表示不是夏时制,或者 -1(默认值)表示不知道是否是夏时制。如果未知,PHP
       会尝试自己搞明白。这可能产生不可预知(但并非不正确)的结果。如果
       PHP 运行的系统中启用了 DST 或者 <CODE
CLASS="parameter"
>is_dst</CODE
>
       设为 1,某些时间是无效的。例如 DST 自 2:00 生效,则所有处于
       2:00 到 3:00 之间的时间都无效,<B
CLASS="function"
>mktime()</B
>
       会返回一个未定义(通常为负)的值。某些系统(例如
       Solaris 8)的 DST 在午夜生效,则 DST 生效当天的 0:30
       会被计算为前一天的 23:30。
      </P
><DIV
CLASS="note"
><BLOCKQUOTE
CLASS="note"
><P
><B
>注意: </B
>
        自 PHP 5.1.0 起,本参数已被废弃。应该使用新的时区处理特性来替代。
       </P
></BLOCKQUOTE
></DIV
></DD
></DL
></DIV
>
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29749"
></A
><H2
>返回值</H2
><P
>&#13;   <B
CLASS="function"
>mktime()</B
> 根据给出的参数返回 Unix
   时间戳。如果参数非法,本函数返回
   <TT
CLASS="constant"
><B
>FALSE</B
></TT
>(在 PHP 5.1 之前返回 <TT
CLASS="literal"
>-1</TT
>)。
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29755"
></A
><H2
>更新日志</H2
><P
>&#13;   <DIV
CLASS="informaltable"
><P
></P
><A
NAME="AEN29758"
></A
><TABLE
BORDER="1"
CLASS="CALSTABLE"
><COL><COL><THEAD
><TR
><TH
>版本</TH
><TH
>说明</TH
></TR
></THEAD
><TBODY
><TR
><TD
>3.0.10</TD
><TD
>加入了 <CODE
CLASS="parameter"
>is_dst</CODE
> 参数</TD
></TR
><TR
><TD
>5.1.0</TD
><TD
>&#13;        <CODE
CLASS="parameter"
>is_dst</CODE
> 参数被废弃。出错时函数返回
        <TT
CLASS="constant"
><B
>FALSE</B
></TT
> 而不再是 <TT
CLASS="literal"
>-1</TT
>。修正了本函数可以接受年月日参数全为零。
       </TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
>
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29775"
></A
><H2
>范例</H2
><P
>&#13;   <TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN29778"
></A
><P
><B
>例 1. <B
CLASS="function"
>mktime()</B
> 例子</B
></P
><P
>&#13;     <B
CLASS="function"
>mktime()</B
>
     在做日期计算和验证方面很有用,它会自动计算超出范围的输入的正确值。例如下面例子中每一行都会产生字符串
     "Jan-01-1998"。
    </P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><code><font color="#000000">
<font color="#0000BB">&lt;?php<br /></font><font color="#007700">echo </font><font color="#0000BB">date</font><font color="#007700">(</font><font color="#DD0000">"M-d-Y"</font><font color="#007700">, </font><font color="#0000BB">mktime</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">12</font><font color="#007700">, </font><font color="#0000BB">32</font><font color="#007700">, </font><font color="#0000BB">1997</font><font color="#007700">));<br />echo </font><font color="#0000BB">date</font><font color="#007700">(</font><font color="#DD0000">"M-d-Y"</font><font color="#007700">, </font><font color="#0000BB">mktime</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">13</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">, </font><font color="#0000BB">1997</font><font color="#007700">));<br />echo </font><font color="#0000BB">date</font><font color="#007700">(</font><font color="#DD0000">"M-d-Y"</font><font color="#007700">, </font><font color="#0000BB">mktime</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">, </font><font color="#0000BB">1998</font><font color="#007700">));<br />echo </font><font color="#0000BB">date</font><font color="#007700">(</font><font color="#DD0000">"M-d-Y"</font><font color="#007700">, </font><font color="#0000BB">mktime</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">, </font><font color="#0000BB">98</font><font color="#007700">));<br /></font><font color="#0000BB">?&gt;</font>
</font>
</code></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
>
  </P
><P
>&#13;   <TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN29785"
></A
><P
><B
>例 2. 下个月的最后一天</B
></P
><P
>&#13;     任何给定月份的最后一天都可以被表示为下个月的第 "0"
     天,而不是 -1 天。下面两个例子都会产生字符串
     "The last day in Feb 2000 is: 29"。
    </P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><code><font color="#000000">
<font color="#0000BB">&lt;?php<br />$lastday </font><font color="#007700">= </font><font color="#0000BB">mktime</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">3</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">2000</font><font color="#007700">);<br />echo </font><font color="#0000BB">strftime</font><font color="#007700">(</font><font color="#DD0000">"Last day in Feb 2000 is: %d"</font><font color="#007700">, </font><font color="#0000BB">$lastday</font><font color="#007700">);<br /></font><font color="#0000BB">$lastday </font><font color="#007700">= </font><font color="#0000BB">mktime</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">4</font><font color="#007700">, -</font><font color="#0000BB">31</font><font color="#007700">, </font><font color="#0000BB">2000</font><font color="#007700">);<br />echo </font><font color="#0000BB">strftime</font><font color="#007700">(</font><font color="#DD0000">"Last day in Feb 2000 is: %d"</font><font color="#007700">, </font><font color="#0000BB">$lastday</font><font color="#007700">);<br /></font><font color="#0000BB">?&gt;</font>
</font>
</code></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
>
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29789"
></A
><H2
>注释</H2
><DIV
CLASS="caution"
><P
></P
><TABLE
CLASS="caution"
BORDER="1"
WIDTH="100%"
><TR
><TD
ALIGN="CENTER"
><B
>小心</B
></TD
></TR
><TR
><TD
ALIGN="LEFT"
><P
>&#13;    在 PHP 5.1.0 之前,在任何已知 Windows
    版本以及一些其它系统下不支持负的时间戳。因此年份的有效范围限制为
    1970 到 2038。
   </P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN29793"
></A
><H2
>参见</H2
><P
>&#13;   <P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><A
HREF="function.gmmktime.html"
><B
CLASS="function"
>gmmktime()</B
></A
></TD
></TR
><TR
><TD
><A
HREF="function.date.html"
><B
CLASS="function"
>date()</B
></A
></TD
></TR
><TR
><TD
><A
HREF="function.time.html"
><B
CLASS="function"
>time()</B
></A
></TD
></TR
></TBODY
></TABLE
><P
></P
>
  </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="function.microtime.html"
ACCESSKEY="P"
>上一页</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>起始页</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="function.strftime.html"
ACCESSKEY="N"
>下一页</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>microtime</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="ref.datetime.html"
ACCESSKEY="U"
>上一级</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>strftime</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>