本文介绍如何将 html 表单中多个复选框的选中项(如产品名称)通过 php 动态收集、格式化,并完整嵌入邮件正文,避免重复判断、提升代码可维护性与安全性。
在处理多选型表单(如产品询价)时,硬编码多个 if(isset($_POST['xxx'])) 不仅冗余,还难以扩展和维护。更规范、高效的做法是统一使用数组型 name 属性,让 PHP 自动接收为索引数组,再通过简洁逻辑生成结构化内容。
首先修正表单写法:name 属性应使用 product[](带方括号),且必须绑定在 标签上,而非 class 或
⚠️ 注意:value 建议设为语义化名称(如 "Product 1"),而非价格数字,便于阅读;价格等元数据可后续通过映射表关联,提高安全性与可读性。
在提交处理逻辑中,先校验 $_POST['product'] 是否存在且非空,再用 implode() 快速生成可读字符串:
通过以上方式,你不仅实现了“将勾选项写入邮件”的需求,更构建了可扩展、易维护、符合 Web 安全最佳实践的表单处理流程。