簡體   English   中英

如何從結構奇怪的PHP數組中回顯一個值(該數組的名稱可能未知)?

[英]How can I echo a value from an oddly structured PHP array (where the name of the array may not be known)?

我正在嘗試從數組引用或回顯特定的值,但是我不清楚如何將引用寫入數組的格式。

我知道您通常可以使用$ arrayname [0]等來回顯特定的數組值,但是在我的示例中,我不知道如何引用arrayname。

<?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”。 謝謝!

在輸入名稱中使用方括號時,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]}";

 <?php $my_array = ['paramrow' => [ "select", "option2" ] ]; var_dump($my_array); ?> <!DOCTYPE html> <html lang="en"> <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是指向內部數組[“ select”,“ option2”]的指針,所以當您使用以下命令進行迭代時: foreach( $val as $k=>$v) $ v分別包含“選擇”和“選項2”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM