PHP foreach使用$ variable->属性

时间:2017-10-01 23:26:45

标签: php mysql

我有一些代码运行从mysql查询返回的$ results报告。 查询是相对标准的,但它们的总数是动态的。到目前为止,我有静态HTML,它有相同的代码重复,但只有在确定查询的数量==标记重复的数量。

所以,我正在尝试实现一个新的foreach循环,它将确定有多少"查询"每个都有,只有标记,最后是$ total。

到目前为止,我已经有了这样的静态php foreach循环,效果很好。

<div class="row">
            <div class="col-xs-12">
                <table class="table table-striped">
                    <thead>
                        <tr>
                            <th>Year</th>
                            <th>Month</th>
                            <th>Item</th>
                            <th class="text-right">Minimum</th>
                            <th class="text-right">Maximum</th>
                            <th class="text-right">Change</th>
                        </tr>
                    </thead>
                    <tbody>

                    <?php foreach ($results as $result) :
                    if ($result->id == 151){

                        echo '<tr>';
                         echo   '<td>', $result->Year, '</td>';
                         echo   '<td>', $result->Month, '</td>';
                         echo   '<td class="text-centre">', $result->name, '</td>';
                         echo   '<td class="text-right">', $result->min, '</td>';
                         echo   '<td class="text-right">', $result->max, '</td>';
                         echo   '<td class="text-right">', $result->cumulative, '</td>';
                        $thirdtotal += $result->change;
                        $total += $result->change;
                         echo '</tr>';



                    } 
                      endforeach; ?>

我遇到的问题是,我是否将上述内容放入另一个循环中?我的想法是,如果查询存在,它将有一个&#34; id&#34;数组中的字段,因此对于&#34; id&#34;的数量,即您将获得多少输出。

  <?php foreach ($results as $key => $value;) :
                   {

                         echo '<tr>';
                         echo  '<td>' $value, '</td>';
                         echo '</tr>';
                   } 
                  endforeach; ?>

这段测试代码不起作用,我是否正确使用了键值?这是解决这个问题并减少控制器中php数量的正确方法吗?

谢谢

0 个答案:

没有答案