所以首先,这里是代码:
$greens = $_REQUEST['greens'];
$squash = $_REQUEST['squash'];
$tomatoes = $_REQUEST['tomatoes'];
$single = $greens xor $squash xor $tomatoes;
if (isset($greens,$squash,$tomatoes)) {
$array = [$greens,$squash,$tomatoes];
$product = implode(', ',$array);
} else if (isset($greens,$squash)) {
$array = [$greens,$squash];
$product = implode(', ',$array);
} else if (isset($greens,$tomatoes)) {
$array = [$greens,$tomatoes];
$product = implode(', ',$array);
} else if (isset($squash,$tomatoes)) {
$array = [$squash,$tomatoes];
$product = implode(', ',$array);
} else if (isset($single)) {
$product = $single;
} else {
$product = $_REQUEST['vendor_product'];
}
这是提交供应商注册表单的 php 文件的一部分。如果供应商选择“生产”作为他们的产品类型,则会出现一组复选框选项,并且需要选择至少一个选项。根据选项集,选定的值将在一个字段中共同提交到数据库中。如何在数据库中查看它们的示例有:'Greens, Squash & Zucchini'
、'Greens, Squash & Zucchini, Tomatoes'
和'Greens'
等。', '
如果选择了多个选项,则插入其中。
上面的代码有效,但想知道是否有办法简化它,因为我很可能会添加更多选项供用户选择。另外,即使每个条件都有多个真结果,三元运算符还能用吗?我对理解那个运营商还是很陌生。