首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

Smarty date_format 完整指南:格式化時間日期輸出

     編輯:PHP 綜合知識

基本語法

{$timestamp|date_format}                    // 默認格式:Feb 6, 2001
{$timestamp|date_format:"%A, %B %e, %Y"}   // Tuesday, February 6, 2001
{$timestamp|date_format:"%H:%M:%S"}       // 14:33:00

本質上封裝 PHP strftime(),支持所有 strftime 格式符。

常用格式符速查表

符號含義示例
%Y四位年份2024
%m月份(01-12)01
%d日期(01-31)15
%H24制小時(00-23)14
%M分鐘(00-59)30
%S秒(00-59)00
%A完整星期名Monday
%B完整月份名January
%c本地日期時間Mon Jan 15 14:30:00 2024
%x本地日期01/15/24
%X本地時間14:30:00
%%字面 % 號%

實戰示例

{* PHP: $smarty->assign('yesterday', strtotime('-1 day')); *}
{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}   {* 當前時間 *}
{$yesterday|date_format:"%Y-%m-%d"}           {* 昨天日期 *}
{$order.add_time|date_format:"%Y年%m月%d日 %H:%M"} {* 中文格式 *}

進階技巧

  • 時區處理:PHP 5.1+ 使用 date_default_timezone_set('Asia/Shanghai') 設置默認時區
  • 本地化:配合 setlocale(LC_TIME, 'zh_CN.utf8') 使 %A/%B 輸出中文星期/月份
  • 性能優化:模板中避免重複格式化同一時間戳,控制器預先格式化賦值

注意事項

  1. 輸入必須是 **Unix 時間戳**(整數),非日期字符串
  2. Windows 系統 strftime 支持的格式符較少,跨平台部署需測試
  3. Smarty 3 內置 {$smarty.now} 獲取當前時間戳

掌握 date_format 格式符,能在模板層靈活輸出各種業務所需的日期時間格式,減少控制器邏輯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved