當前位置: 首頁> 最新文章列表> 用getdate()函數如何提取年、月、日等詳細時間信息?一看就懂的PHP教程

用getdate()函數如何提取年、月、日等詳細時間信息?一看就懂的PHP教程

gitbox 2025-08-24

用getdate()函數如何提取年、月、日等詳細時間信息?一看就懂的PHP教程

在PHP中,獲取當前時間的詳細信息非常簡單,使用內置函數getdate()就可以輕鬆提取出包括年、月、日、時、分、秒等信息。這個函數返回一個關聯數組,其中包含了所有的日期和時間信息。

1. getdate()函數簡介

getdate()函數返回一個包含當前日期和時間信息的數組。你可以通過這個數組訪問年、月、日、星期、時、分、秒等內容,甚至可以訪問該時間戳相對於UNIX紀元(1970年1月1日)的秒數。

函數的基本語法如下:

 <span><span><span class="hljs-title function_ invoke__">getdate</span></span><span>(timestamp);
</span></span>

參數timestamp是可選的,如果沒有傳入時間戳, getdate()默認會獲取當前的時間信息。如果傳入時間戳,它將返回該時間戳所對應的日期和時間。

2. getdate()返回的數據結構

getdate()返回的是一個關聯數組,數組中的鍵值分別表示了不同的日期和時間部分。具體來說,它返回以下字段:

  • 0 :Unix時間戳(自1970年1月1日起的秒數)

  • seconds :秒

  • minutes :分鐘

  • hours :小時

  • mday :月份中的日期

  • wday :星期幾(0 - 6,0代表星期日)

  • mon :月份(1 - 12)

  • year :年份

  • yday :年份中的第幾天(0 - 365)

  • weekday :星期幾的名稱(例如:"Sunday")

  • month :月份的名稱(例如:"January")

3. 如何使用getdate()提取時間信息?

讓我們看一下如何使用getdate()函數來提取年、月、日等詳細的時間信息。

示例代碼:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// 獲取當前的天期和時間</span></span><span>
</span><span><span class="hljs-variable">$dateInfo</span></span><span> = </span><span><span class="hljs-title function_ invoke__">getdate</span></span><span>();

</span><span><span class="hljs-comment">// 打印出詳細的天期和時間信息</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Year: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'year'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;    </span><span><span class="hljs-comment">// 年</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Month: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'mon'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;    </span><span><span class="hljs-comment">// 月</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Day: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'mday'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;     </span><span><span class="hljs-comment">// 天</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Hour: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'hours'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;   </span><span><span class="hljs-comment">// 時</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Minute: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'minutes'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 分</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Second: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'seconds'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 秒</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Day of Week: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'weekday'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 星期幾</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Month Name: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'month'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 月份名稱</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

輸出示例:

 <span><span><span class="hljs-attr">Year:</span></span><span> </span><span><span class="hljs-number">2025</span></span><span>
</span><span><span class="hljs-attr">Month:</span></span><span> </span><span><span class="hljs-number">6</span></span><span>
</span><span><span class="hljs-attr">Day:</span></span><span> </span><span><span class="hljs-number">17</span></span><span>
</span><span><span class="hljs-attr">Hour:</span></span><span> </span><span><span class="hljs-number">14</span></span><span>
</span><span><span class="hljs-attr">Minute:</span></span><span> </span><span><span class="hljs-number">45</span></span><span>
</span><span><span class="hljs-attr">Second:</span></span><span> </span><span><span class="hljs-number">30</span></span><span>
</span><span><span class="hljs-attr">Day of Week:</span></span><span> </span><span><span class="hljs-string">Tuesday</span></span><span>
</span><span><span class="hljs-attr">Month Name:</span></span><span> </span><span><span class="hljs-string">June</span></span><span>
</span></span>

4. 獲取其他時間信息

除了常見的年、月、日, getdate()還可以提取其他有用的時間信息,比如:

  • 星期幾:可以通過wday獲取星期幾的數字表示(0代表星期天,1代表星期一,以此類推)。

  • 年份中的第幾天:通過yday字段獲取。

  • 時間戳:如果你想得到當前時間的Unix 時間戳,可以使用0鍵,表示從1970年1月1日到當前時間的秒數。

示例:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$dateInfo</span></span><span> = </span><span><span class="hljs-title function_ invoke__">getdate</span></span><span>();
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Day of Year: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'yday'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 年中的第幾天</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Timestamp: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-number">0</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 時间戳</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

輸出示例:

 <span><span><span class="hljs-keyword">Day</span></span><span> </span><span><span class="hljs-keyword">of</span></span><span> </span><span><span class="hljs-keyword">Year</span></span><span>: </span><span><span class="hljs-number">168</span></span><span>
</span><span><span class="hljs-type">Timestamp</span></span><span>: </span><span><span class="hljs-number">1686987330</span></span><span>
</span></span>

5. 使用自定義時間戳

除了獲取當前的時間信息外, getdate()也可以傳入一個自定義的時間戳,來獲取該時間戳對應的日期和時間信息。這對於處理歷史日期或未來日期非常有用。

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// 设定一个自定义時间戳</span></span><span>
</span><span><span class="hljs-variable">$timestamp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strtotime</span></span><span>(</span><span><span class="hljs-string">"2023-12-25 12:00:00"</span></span><span>);

</span><span><span class="hljs-comment">// 获取该時间戳对应的天期和時间信息</span></span><span>
</span><span><span class="hljs-variable">$dateInfo</span></span><span> = </span><span><span class="hljs-title function_ invoke__">getdate</span></span><span>(</span><span><span class="hljs-variable">$timestamp</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Year: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'year'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 2023</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Month: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'mon'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 12</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Day: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'mday'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;  </span><span><span class="hljs-comment">// 25</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Hour: "</span></span><span> . </span><span><span class="hljs-variable">$dateInfo</span></span><span>[</span><span><span class="hljs-string">'hours'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>; </span><span><span class="hljs-comment">// 12</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

輸出示例:

 <span><span><span class="hljs-attr">Year:</span></span><span> </span><span><span class="hljs-number">2023</span></span><span>
</span><span><span class="hljs-attr">Month:</span></span><span> </span><span><span class="hljs-number">12</span></span><span>
</span><span><span class="hljs-attr">Day:</span></span><span> </span><span><span class="hljs-number">25</span></span><span>
</span><span><span class="hljs-attr">Hour:</span></span><span> </span><span><span class="hljs-number">12</span></span><span>
</span></span>

6. 總結

通過getdate()函數,PHP開發者可以方便地提取當前或指定時間的各種日期和時間信息。這個函數返回的關聯數組結構清晰,易於訪問,並且適用於獲取詳細的日期時間數據,如年、月、日、時、分、秒等。無論是處理當前時間,還是轉換和處理其他時間戳, getdate()都是一個非常有用的工具。

希望這篇教程能幫助你快速理解和掌握getdate()函數的使用,提升你的PHP開發技能!