为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

PHP
holdtom 2021-12-24 15:34:36
我正在尝试从数组中引用或回显特定值,但我不清楚如何将引用写入数组的格式。我知道您通常可以使用 $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”。谢谢!
查看完整描述

2 回答

?
收到一只叮咚

TA贡献1821条经验 获得超4个赞

当您在输入名称中使用方括号时,PHP 会根据 POST 参数创建一个数组。$_POST['paramrow']一个数组也是如此,您可以循环遍历它:


foreach ($_POST['paramrow'] as $i => $param) {

    echo "In menu $i you selected $param<br>";

}

或直接使用索引访问:


echo "The selection from menu #1 is {$_POST['paramrow'][1]}";


查看完整回答
反对 回复 2021-12-24
?
慕沐林林

TA贡献2016条经验 获得超9个赞

<?php


$my_array = ['paramrow' => [ "select", "option2" ] ];

var_dump($my_array);


?>

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>StackOverFlow</title>


    <script

            src="https://code.jquery.com/jquery-3.4.1.min.js"

            integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="

            crossorigin="anonymous">

    </script>

    <script type="text/javascript" src="app.js"></script>

</head>

<body>


<?php


foreach ($my_array as $key=>$val) {


    if( is_array($val) ) {

        foreach( $val as $k=>$v) {

            echo "$k = $v";

            echo "<br/>";

        }


    }


}



?>


</body>

</html>


正如你所看到的,数组的结构就像我写的代码一样。它是另一个数组中的一个数组。所以需要迭代在第一个和所述$ VAL是一个指向内阵列[“选择”,“选项2”],所以当你迭代与: foreach( $val as $k=>$v)所述$ V包含“选择”,并分别为“选项2”。


查看完整回答
反对 回复 2021-12-24
  • 2 回答
  • 0 关注
  • 133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信