Php 将表单上的输入值设置为$\u GET数组

Php 将表单上的输入值设置为$\u GET数组,php,arrays,forms,input,Php,Arrays,Forms,Input,我有一个页面正在接收来自$\u GET的数组。假设它在$\u GET['types']中有3个值,其中包含:“good”、“bad”和“丑恶”。现在在这个页面上,我正在设置一个表单,我需要通过一个输入将这个数组传递到表单中。也许这段简短的代码可以帮助我演示我要做的事情 <form action="dosomething.php" method="get"> <input name="types[]" value="<?php echo $_GET['types']

我有一个页面正在接收来自$\u GET的数组。假设它在$\u GET['types']中有3个值,其中包含:“good”、“bad”和“丑恶”。现在在这个页面上,我正在设置一个表单,我需要通过一个输入将这个数组传递到表单中。也许这段简短的代码可以帮助我演示我要做的事情

<form action="dosomething.php" method="get">
    <input name="types[]" value="<?php echo $_GET['types']; ?>" />
</form>

如何实现这一点?

字符串上下文中的数组只是字面单词数组。您说$\u GET['types']是一个数组,因此生成以下html:

<input ... value="Array">
<input ... value="foo,bar,baz">
如果希望将这些值作为单独的数组项,则必须提交多个输入字段:

<input name="types[]" value="foo"> 
<input name="types[]" value="bar">
etc...

是的,还有。。。?它做什么,不做什么?你想要3个输入?或者一个输入中的所有3个值??这是一种非常不安全的做法,请改用filter_输入。我正在创建一个页面来查询数据库。$\u GET包含用于查询的不同筛选器。我制作的表单是一个搜索,它通过添加到过滤器中的搜索查询返回到自身。因此,我需要维护$\u GET变量中已有的当前过滤器。
$_GET['types'] = array(
     0 => 'foo,bar,baz'
);
<input name="types[]" value="foo"> 
<input name="types[]" value="bar">
etc...
$_GET['types'] = array(
    0 => 'foo',
    1 => 'bar'
    etc...