在PHP中,獲取當前時間的詳細信息非常簡單,使用內置函數getdate()就可以輕鬆提取出包括年、月、日、時、分、秒等信息。這個函數返回一個關聯數組,其中包含了所有的日期和時間信息。
getdate()函數返回一個包含當前日期和時間信息的數組。你可以通過這個數組訪問年、月、日、星期、時、分、秒等內容,甚至可以訪問該時間戳相對於UNIX紀元(1970年1月1日)的秒數。
函數的基本語法如下:
<span><span><span class="hljs-title function_ invoke__">getdate</span></span><span>(timestamp);
</span></span>
參數timestamp是可選的,如果沒有傳入時間戳, 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")
讓我們看一下如何使用getdate()函數來提取年、月、日等詳細的時間信息。
<span><span><span class="hljs-meta"><?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">"<br>"</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">"<br>"</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">"<br>"</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">"<br>"</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">"<br>"</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">"<br>"</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">"<br>"</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">"<br>"</span></span><span>; </span><span><span class="hljs-comment">// 月份名稱</span></span><span>
</span><span><span class="hljs-meta">?></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>
除了常見的年、月、日, getdate()還可以提取其他有用的時間信息,比如:
星期幾:可以通過wday獲取星期幾的數字表示(0代表星期天,1代表星期一,以此類推)。
年份中的第幾天:通過yday字段獲取。
時間戳:如果你想得到當前時間的Unix 時間戳,可以使用0鍵,表示從1970年1月1日到當前時間的秒數。
<span><span><span class="hljs-meta"><?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">"<br>"</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">"<br>"</span></span><span>; </span><span><span class="hljs-comment">// 時间戳</span></span><span>
</span><span><span class="hljs-meta">?></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>
除了獲取當前的時間信息外, getdate()也可以傳入一個自定義的時間戳,來獲取該時間戳對應的日期和時間信息。這對於處理歷史日期或未來日期非常有用。
<span><span><span class="hljs-meta"><?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">"<br>"</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">"<br>"</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">"<br>"</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">"<br>"</span></span><span>; </span><span><span class="hljs-comment">// 12</span></span><span>
</span><span><span class="hljs-meta">?></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>
通過getdate()函數,PHP開發者可以方便地提取當前或指定時間的各種日期和時間信息。這個函數返回的關聯數組結構清晰,易於訪問,並且適用於獲取詳細的日期時間數據,如年、月、日、時、分、秒等。無論是處理當前時間,還是轉換和處理其他時間戳, getdate()都是一個非常有用的工具。
希望這篇教程能幫助你快速理解和掌握getdate()函數的使用,提升你的PHP開發技能!