如何将HTML表单多个选定的选项分配给PHP变量?

我有带有多个select元素的 HTML表单,让用户从列表中选择多个选项进行提交.表单方法是POST,它将表单发布到 PHP文件.通过读取这个 How to get multiple selected values of select box in php?,我想出了如何回显多个选定的选项但是我无法将这些值作为字符串写入变量,并且在每个选项值之间有空格.是否可以在不使用数组的情况下实现此目的?

这是我的HTML代码:

<select name="place[]" id="place" multiple>
    <optgroup label="Ottawa">
        <option value="London">London</option>
        <option value="Toronto">Toronto</option>
        <option value="Windsor">Windsor</option>
    </optgroup>
    <optgroup label="Alberta">
        <option value="Brooks">Brooks</option>
        <option value="Calgary">Calgary</option>
        <option value="Cold Lake">Cold Lake</option>
    </optgroup>
</select>

这是PHP代码:

<?php
foreach ($_GET['place'] as $selectedOption)
    echo $selectedOption."\n";
?>

上面的代码只回显值,但不将其作为字符串赋值给变量.我可以简单地使用$locations =而不是echo吗?

注意:有许多问题和解答显示如何将选择值分配给PHP变量,但不是多选项.

最佳答案 由于您说您使用的是帖子请求,因此$_GET [‘place’]将无效.所以使用$_POST [‘place’]代替,你可以使用
implode()将数组的值粘合在一起:

$locations = implode(' ', $_POST['place']);
点赞