我有一个带有复选框的html联系表单。当我去获取$ _POST数据时,我看到的复选框字段是ARRAY。
以下是HTML表单的复选框片段
<div class="col-md-3">
<div class="checkbox">
<label>
<input type="checkbox" name="services[]" value="check 1">Type 1
</label>
</div>
</div>
<div class="col-md-3">
<div class="checkbox">
<label>
<input type="checkbox" name="services[]" value="check 2 ">Type 2
</label>
</div>
</div>
<div class="col-md-3">
<div class="checkbox">
<label>
<input type="checkbox" name="services[]" value="check 3">Type 3
</label>
</div>
</div>
<div class="col-md-3">
<div class="checkbox">
<label>
<input type="checkbox" name="services[]" value="check 4">Type 4
</label>
</div>
</div>
这是我的PHP处理文件
$email = $_POST['email'];
if ( is_array ( $_POST['services'] ) ) {
$services = $_POST['services'];
}
echo 'email is: ' . $email . ' services :' . $services;
电子邮件可以正常工作,因为它只是来自一个输入字段的POST数据。但是如何将数组保存到变量中,以便像
那样$services = "check 1, check 2, check 3";
答案 0 :(得分:2)
我猜你是想把这个数组放在你的电子邮件中。在这种情况下,PHP
将仅使用单词Array
来告诉您实际数组,而不是字符串。
要获取以逗号分隔的列表,您应该在$services
上使用implode()函数(不要忘记先过滤它!)。
$commaList = implode(', ', $services);
答案 1 :(得分:0)
您应该在PHP中使用implode()
函数。
$variable = implode(', ', $services);
你也可以使用foreach循环。
$variable = '';
foreach($services as $key => $value){
$variable .= $value . ', ';
}
rtrim($variable, ', ');