當前位置: 首頁> 最新文章列表> 如何使用PHP date() 顯示星期幾?你可以選擇顯示數字還是名字!

如何使用PHP date() 顯示星期幾?你可以選擇顯示數字還是名字!

gitbox 2025-08-26

在PHP 中,處理日期和時間的最常用函數之一就是date() 。當你需要顯示當前的星期幾時, date()也可以輕鬆勝任,而且你可以自由選擇是以數字的方式顯示,還是以名字(英文或本地化格式)顯示。

顯示星期幾的數字

如果你想以數字形式顯示星期幾,可以使用格式字符w 。這個格式會返回數字0(表示星期日)6(表示星期六)

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'w'</span></span><span>); </span><span><span class="hljs-comment">// 輸出示例:3,表示星期三</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

這個數字對於程序邏輯判斷很有用,比如你需要根據是工作日還是周末來決定某個功能是否開啟。

顯示英文星期名

如果你更喜歡以英文的方式顯示星期幾的名稱,可以使用l (小寫字母L)這個格式字符:

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'l'</span></span><span>); </span><span><span class="hljs-comment">// 輸出示例:Wednesday</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

這個格式會返回完整的英文星期名稱,比如Monday、Tuesday、Wednesday 等。

顯示縮寫的英文星期名

如果你不需要完整名稱,而是更精簡的三個字母縮寫,可以使用D

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'D'</span></span><span>); </span><span><span class="hljs-comment">// 輸出示例:Wed</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

這個格式對於標題、界面空間較小的地方尤其有用。

使用setlocale() 和strftime() 顯示本地語言的星期名(僅適用於某些系統)

如果你希望用本地語言(如中文)顯示星期幾,可以配合setlocale()strftime()來實現。不過要注意,這種方式在某些操作系統(如Windows)上可能效果不佳。

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-title function_ invoke__">setlocale</span></span><span>(LC_TIME, </span><span><span class="hljs-string">'zh_CN.UTF-8'</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-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">'%A'</span></span><span>); </span><span><span class="hljs-comment">// 輸出示例:星期三</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

注意:從PHP 8.1 開始, strftime()已被棄用,推薦使用國際化擴展(如IntlDateFormatter)進行本地化日期格式處理。

使用DateTime 類也是一個好選擇

現代PHP 開發更推薦使用DateTime類,它比傳統的date()函數更靈活和麵向對象。

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$dt</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">DateTime</span></span><span>();
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$dt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">format</span></span><span>(</span><span><span class="hljs-string">'l'</span></span><span>); </span><span><span class="hljs-comment">// 輸出示例:Wednesday</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

你也可以通過傳入自定義時間字符串來操作其他日期,而不僅僅是當前時間。

小結

無論是數字形式的星期幾,還是英文/本地語言的星期名稱,PHP 的date()函數都提供了簡單而強大的支持。如果你追求代碼的可維護性和靈活性,可以考慮使用DateTime類進行日期處理。掌握這些技巧,可以讓你的應用更智能、更具國際化能力。