1

私は次の配列構造を持っています:$array[$certain_key][some_text_value]

そして、whileループで、配列からデータを出力したいと思います。ここ$certain_keyで、は特定の値です。

多次元配列をループする方法を知っていますが、これはこの問題の完全な解決策ではありません。

foreach ($a as $v1) {
    foreach ($v1 as $v2) {
        echo "$v2\n";
    }
}

毎回配列全体をループさせたくはありませんが、$certain_key一致した場合に限ります。

編集:より正確には、これは私がやろうとしていることです:

$array[$array_key][some_text];

while reading from db {

  //print array where a value returned from the db = $array_key

}
4

5 に答える 5

2
while ($row = fetch()) {
   if (isset($array[$row['db_id']])) {
      foreach ($array[$row['db_id']] as $some_text_value => $some_text_values_value) {
         echo ...
      }
   }
}
于 2012-04-20T21:21:35.517 に答える
1
foreach ($array as $certain_key => $value) {
    if($certain_key == $row['db_id']) {
        foreach ($value as $some_text_value) {
            echo "$v2\n";
        }
    }
}
于 2012-04-20T21:21:56.113 に答える
1

あなたは

foreach($array[$certain_key] as $k => $v)
{
     do_stuff();
}

于 2012-04-20T21:22:21.450 に答える
0

多分あなたは探していarray_key_existsますか?それはこのように動作します:

if(array_key_exists($certain_key, $array)) {
   // do something
}
于 2012-04-20T21:21:23.307 に答える
0
<?php

foreach ($a as $idx => $value) {
    // replace [search_value] with whatever key you are looking for
    if ('[search_value]' == $idx) {
        // the key you are looking for is stored as $idx
        // the row you are looking for is stored as $value
    }
}
于 2012-04-20T21:23:38.570 に答える