【问题标题】:PHP Looping array data in a table format & an errant valuePHP以表格格式循环数组数据和错误值
【发布时间】:2018-09-22 02:57:00
【问题描述】:

我有以下代码。如何将 foreach 函数的结果 ($x) 打印到顶部的表格中,但以列而不是水平直线形式打印?有没有办法做到这一点,而不仅仅是将每个单独的值插入到 HTML 表中?我需要对我的 $employee['name'] 变量执行相同的操作,但我不确定如何将这些值插入到表格格式中,而无需一一输入并自己输入值。

另外,$x 最后的一个值保持为整数,并且不回显由 foreach 函数指定的字符串变量,有没有办法解决这个问题?

 <!--4.3--> 
     <table>
        <tr>
            <td>Employee name</td><td></td><td></td><td></td><td></td><td></td>
            <td>Type of Paying</td><td></td><td></td><td></td><td></td><td></td>
        </tr>
        <tr>
            <td></td><td></td><td></td><td></td><td></td><td></td>
            <td><?php echo $x;?></td><td></td><td></td><td></td><td></td><td></td>
        </tr> 
     </table>
</html>

<?php
foreach ($employees as $employee) {
    $x = ($employee['wage'] * $employee['hrs']) * 4;
    if ( 3000 <= $x ) {
        echo "High paying";
    } elseif (2000 <= $x && $x <= 2999) {
        echo "Good paying";
    } else {
        echo "Low paying";
    }
}
print_r ($x); 

【问题讨论】:

  • 最后的print_r ($x);会以整数形式输出$x的最后一个值。
  • 表格布局中有这么多空的&lt;td&gt;&lt;/td&gt; 位有什么原因吗?
  • 您必须稍微评估一下您的代码。您的表格与 x 的值相呼应,但直到表格之后您才设置 x。然后在你的代码末尾,在循环已经执行之后,你使用print_r 的值x
  • @NigelRen 在列之间创建空间。根据我目前所知甚少,它在很大程度上是一个 jimmyrigged 的​​解决方案。我只知道基本的html,不知道css(我将在另一门课程中学习),所以我正在努力做到最好。
  • @spencdev 哦,对了,我知道我想要这张桌子,并且我想确保在移动它之前我已经使该功能正常工作。我现在把它移到桌子上方。表格内的回声是一个测试,看看它会如何打印格式。

标签: php arrays html-table


【解决方案1】:

我将 foreach 函数插入到需要打印结果的表格中,然后在 ifelse 语句中的每个参数之后添加
标记,它就像一个魅力。

该表的代码现在如下所示:

<html>
 <table>
    <tr>
        <td>Employee name</td><td></td><td></td><td></td><td></td><td></td>
        <td>Type of Paying</td><td></td><td></td><td></td><td></td><td></td>
    </tr>
    <tr>
        <td></td><td></td><td></td><td></td><td></td><td></td>
        <td> <?php
foreach ($employees as $employee) {
    $x = ($employee['wage'] * $employee['hrs']) * 4;
    if ( 3000 <= $x ) {
        echo "High paying"; echo "<br/>";
    } elseif (2000 <= $x && $x <= 2999) {
        echo "Good paying"; echo "<br/>";
    } else {
        echo "Low paying"; echo "<br/>"; 
    }
}  echo "<br/>" ; ?>
</td><td></td><td></td><td></td><td></td><td></td>
    </tr> 
 </table>

foreach 函数上方的其他部分将保存员工姓名,尚未填写以匹配。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    • 2014-04-26
    • 2013-01-26
    • 1970-01-01
    • 2015-12-03
    • 2020-02-01
    • 1970-01-01
    相关资源
    最近更新 更多