猿问

如何从结构奇怪的 PHP 数组(其中可能不知道数组的名称)中回显值?

我正在尝试从数组中引用或回显特定值,但我不清楚如何将引用写入数组的格式。


我知道您通常可以使用 $arrayname[0] 等来回显特定的数组值,但在我的示例中,我不知道如何引用数组名。


<?php for($i = 0; $i <= 1; $i++){ ?>

<select name="paramrow[<?php echo $i; ?>]" onchange="this.form.submit()">

    <option value="-- Select --">-- Select --</option>

    <option value="option1">option 1</option>

    <option value="option2">option 2</option>

    <option value="option3">option 3</option>

</select>

<?php } ?>

这是我 var_dump($_POST); 时显示的内容:


array(1) {

    ["paramrow"]=>

    array(2) {

        [0]=>

        string(12) "-- Select --"

        [1]=>

        string(7) "option2"

    }

}

所以在上面,我想知道如何引用“option2”。谢谢!


holdtom
浏览 134回答 2
2回答

收到一只叮咚

当您在输入名称中使用方括号时,PHP 会根据 POST 参数创建一个数组。$_POST['paramrow']一个数组也是如此,您可以循环遍历它:foreach ($_POST['paramrow'] as $i => $param) {&nbsp; &nbsp; echo "In menu $i you selected $param<br>";}或直接使用索引访问:echo "The selection from menu #1 is {$_POST['paramrow'][1]}";

慕沐林林

<?php$my_array = ['paramrow' => [ "select", "option2" ] ];var_dump($my_array);?><!DOCTYPE html><html><head>&nbsp; &nbsp; <meta charset="UTF-8">&nbsp; &nbsp; <title>StackOverFlow</title>&nbsp; &nbsp; <script&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; src="https://code.jquery.com/jquery-3.4.1.min.js"&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; crossorigin="anonymous">&nbsp; &nbsp; </script>&nbsp; &nbsp; <script type="text/javascript" src="app.js"></script></head><body><?phpforeach ($my_array as $key=>$val) {&nbsp; &nbsp; if( is_array($val) ) {&nbsp; &nbsp; &nbsp; &nbsp; foreach( $val as $k=>$v) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "$k = $v";&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "<br/>";&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }}?></body></html>正如你所看到的,数组的结构就像我写的代码一样。它是另一个数组中的一个数组。所以需要迭代在第一个和所述$ VAL是一个指向内阵列[“选择”,“选项2”],所以当你迭代与: foreach( $val as $k=>$v)所述$ V包含“选择”,并分别为“选项2”。
随时随地看视频慕课网APP
我要回答