从阵列中打印特定值

时间:2017-08-03 14:05:50

标签: php mysql

我从我的数据库中得到了这种类型的数组格式的结果。现在我想从数组中打印问题,答案和类别名称,我该怎么做?

<?php  $v1 = '';
    foreach($var as $data){ 

 ?> 
<div class="faqHeader"> <?php echo $data['category_name'];?> </div>             
    <div class="panel-group" id="<?php echo $data->title;?>">

我试过这些鳕鱼但没有得到答案。在$ var中我得到了所有的数组值

enter image description here

4 个答案:

答案 0 :(得分:1)

需要考虑的事项: -

1.您的子数组又是一个数组,因此您也需要在子数组上使用foreach()。 (所以基本上是两个foreach()

2.您还需要关闭divs以及foreach()循环。

所以代码需要如下所示: -

<?php
    foreach($var as $data){ 
        foreach($data['data'] as $dat){
 ?> 
    <div class="faqHeader"> <?php echo $dat['category_name'];?>            
        <div class="panel-group" id="<?php echo $dat['questions'];?>"><?php echo $dat['questions'];?></div>
        <div class="panel-group" id="<?php echo $dat['answer'];?>"><?php echo $dat['answer'];?></div>
    </div> 
<?php } }?>

答案 1 :(得分:1)

你可以使用两个循环来简化你的任务: -

foreach($var as $index=>data){
    echo $data['name']; // this will be your category name 
    foreach($data as $questionIndex=>$questionData){
        echo $questionData['question'];
        echo $questionData['answer'];
    }
}

答案 2 :(得分:0)

由于您的数组包含多个datadata本身包含多个值,因此您需要两个前提:

foreach($var as $item) {
    foreach($item['data'] as $info) {
         var_dump($info);
    }
}

答案 3 :(得分:0)

请尝试此代码

<?php  
    $v1 = '';
    foreach($var as $data){ 
?> 
<div class="faqHeader"> <?php echo $data['data'][0]['category_name'];?> </div>             
<div class="panel-group" id="<?php echo $data['name'];?>">
<?php
    }
?>

你没有任何&#39;标题&#39;数组中的索引,因此您可以将其更改为&#39; name&#39;