PHP多维数组获取数据



我需要一些帮助从PHP多维数组中获取数据。这个数组充满了问题,以及这些问题的答案。每个问题可以有多个答案,但大多数问题的答案数量是不同的。这是它的var_dump:

object(CommandResponse)#3 (3) 
{ 
    ["success"]=> bool(true) 
    ["message"]=> string(6) "Got it" 
    ["value"]=> array(2) 
    { 
       [0]=> array(3) 
       { 
           ["questionId"]=> string(2) "25" 
           ["question"]=> string(9) "Question 1" 
           ["answers"]=> array(2) 
           { 
               [0]=> array(2) 
               { 
                   ["answerId"]=> string(1) "1" 
                   ["answer"]=> string(9) "Answer 1" 
               } 
               [1]=> array(2) 
               { 
                  ["answerId"]=> string(2) "18" 
                  ["answer"]=> string(22) "Answer 2 for question 1" 
               }
         }
    } 
    [1]=> array(3) 
    { 
        ["questionId"]=> string(2) "26" 
        ["question"]=> string(9) "Question 2" 
        ["answers"]=> array(1) 
        { 
            [0]=> array(2) 
            { 
                ["answerId"]=> string(2) "17" 
                ["answer"]=> string(9) "Answer 2" 
            } 
        } 
    } 
}

我想从它得到这样的东西:

Question 1
  Answer 1
  Answer 2
Question 2
  Answer 1
  Answer 2

到目前为止,我已经试过了:

得到这样的问题:print $myArray->value[0]['question'];得到像这样的第一个答案:print $myArray->value[0]['anwsers'][0]['answer'];

我也试过在一些foreach循环中循环它,但是我没有得到任何好的结果。

foreach ($myArray->value as $key => $value)
{
    print $value['question'].' - ';
    print $value['answers'][0]['answer'].'<br />';
}

假设数据在变量$object中提供。

// Assign questions array to $questions
$questions = $object->value;
// Loop through questions
echo '<ul>';
foreach ($questions as $q) {
    echo '<li>' . $q['question'];
    // Loop through answers
    echo '<ul>';
    foreach($q['answers'] as $a) {
        echo '<li>' . $a['answer'] . '</li>';
    }
    echo '</ul>';
    echo '</li>';
}
echo '</ul>';

应该输出所需的

  • 问题1
    • 回答2
  • 问题2
    • 回答2

相关内容

  • 没有找到相关文章

最新更新