在PHP 中將數字轉換為月份名稱
您的PHP 程式碼正在嘗試將月份數字(8) 轉換為其對應的月份名稱( “八月”)使用date() 函數。不幸的是,代碼返回“十二月”而不是“八月”。這是因為 $monthNum 在傳遞給 strtotime() 函數之前已用前導零(“08”)填充。
使用 DateTime 物件的建議解決方案
為了準確且最新的日期/時間操作,強烈建議使用 DateTime 物件。這是使用DateTime 類別的程式碼的改進版本:
<code class="php">$monthNum = 8; $dateObj = DateTime::createFromFormat('!m', $monthNum); $monthName = $dateObj->format('F'); // August</code>
舊PHP 版本的替代解決方案
如果您無法使用DateTime 對象,您可以建立一個使用mktime() 函數建立時間戳並將其傳遞給date() 函數:
<code class="php">$monthNum = 8; $monthName = date('F', mktime(0, 0, 0, $monthNum, 10)); // August</code>
這裡,mktime(0, 0, 0, $monthNum, 10) 建立一個代表10 天的時間戳給定的月份。 date() 的「F」格式說明符傳回完整的月份名稱。
以上是為什麼我的 PHP 程式碼在將月份數字轉換為其名稱時傳回'December”而不是'August”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!