猿问

如何通过 HTML 表单发送 PHP 数组(使用输入标签)

我想在输入表单元素中发送一个数组。


我的阵列:


Array( [0] => 55 [1] => 1 [2] => 4 )

HTML<input>标签:


<input type="hidden" name="category" value="'.$category.'" />

这是我的代码生成的 URL:


http://localhost/search?&category%5B%5D=55&category%5B%5D=1&category%5B%5D=4

但我也收到了这个 PHP 通知:


PHP 注意:数组到字符串的转换


如何正确通过 HTML 表单发送数组?


============================


我找到了这个解决方案:


foreach ($category as $item) {

    echo '<input type="hidden" name="categories[]" value="'.$item.'" />';                       

}

准备您的阵列$category。例子:


    echo '<div align="center">  

    <form method="GET" action="/search" />                      

    <input type="hidden" name="search" value="'.$search.'" />'; 


    foreach ($category as $item){


    echo '<input type="hidden" name="categories[]" value="'.$item.'" />'; 


    } 


    echo '<input type="submit">        

    </form>

    </div>';

并得到:


if(isset($_GET['categories'])) {


$categories = $_GET['categories'];                    


}


侃侃无极
浏览 228回答 1
1回答

RISEBY

最简单的方法是将您的类别数组转换为 JSON 并返回。echo&nbsp;'<input&nbsp;type="hidden"&nbsp;name="category"&nbsp;value="'&nbsp;.&nbsp;json_encode($category)&nbsp;.&nbsp;'"&nbsp;/>';...当您发送表单时,将 JSON 解析回数组:$category&nbsp;=&nbsp;json_decode($_GET["category"]);
随时随地看视频慕课网APP
我要回答