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

Smarty 表單元件自動生成:html_options、html_radios、html_checkboxes、html_select_date/time 完整用法

     編輯:PHP 綜合知識

核心優勢

將 PHP 陣列資料直接對應到 HTML 表單元件,分離資料與呈現,支援預設選中值、標籤輸出自動跳脫。

html_options:下拉選單選項

// PHP
$smarty->assign('cust_ids', [1000, 1001, 1002, 1003]);
$smarty->assign('cust_names', ['Alice', 'Bob', 'Cindy', 'David']);
$smarty->assign('customer_id', 1002); // 預設選中

// 模板
<select name="customer_id">
    {html_options values=$cust_ids output=$cust_names selected=$customer_id}
</select>
/*
輸出:




*/

html_radios:單選按鈕群組

{html_radios name="gender" values=['M','F'] output=['男','女'] selected=$user.gender separator="  "}

html_checkboxes:複選框群組

$smarty->assign('roles', ['admin','editor','viewer']);
$smarty->assign('user_roles', ['editor']); // 陣列值

{html_checkboxes name="roles[]" values=$roles output=$roles selected=$user_roles separator="
"} /* 輸出: admin
editor
viewer
*/

html_select_date / html_select_time:日期時間選擇器

{* 日期:年月日三個 select *}
{html_select_date prefix="dob_" start_year=1950 end_year=2010 display_days=true month_format="%m" selected=$user.dob}

{* 時間:時分秒 *}
{html_select_time prefix="meeting_" display_seconds=false minute_interval=15 selected=$meeting.time}

參數完整對照表

函式必要參數常用選用參數
html_optionsvalues, outputselected, print_result
html_radiosname, valuesoutput, selected, separator, labels, checked, print_result
html_checkboxesname, valuesoutput, selected, separator, labels, print_result
html_select_date—prefix, start_year, end_year, display_days, month_format, selected, print_result
html_select_time—prefix, display_seconds, minute_interval, selected, print_result

進階:動態資料庫驅動選單

// PHP
$stmt = $pdo->query('SELECT id, name FROM categories ORDER BY sort');
$cats = $stmt->fetchAll(PDO::FETCH_KEY_PAIR); // [id => name]
$smarty->assign('categories', $cats);
$smarty->assign('selected_cat', $product->category_id);

// 模板
{html_options values=$categories output=$categories selected=$selected_cat}

相關專題

  • 《Smarty 模板入門基礎教程》
  • 《PHP 表單處理完全指南》
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved