使用PHP生成代码(文本框的输入表单)


Generating code (input form for text boxes) using PHP...loop?

所以我正在学习PHP,我只是添加一个日期选择功能到一些文本输入框class= ' local '。现在所有的输入框都是一样的,但只有一些有本地功能,但所有的输入框都需要它。

我知道我可以在每个字段手动输入它,但在学习的精神,我想知道是否有一种方法来添加class = ' local '到所有的输入形式可能使用while循环?

是一个示例,其中第一组输入表单具有local,第二组不具有local。总之,我可以用PHP来完成这个吗?

<td><input class='tcal' type="text" name="txtG1D1" value=""></td>
    <td><input type="text" name="txtG1P1" value="P-"></td>
    <td><input size="100" type="text" name="txtG1RD1" value=""></td>
    <td>$<input type="text" name="txtG1RT1" value="00.0"></td>
</tr>
<tr>
    <td><input class='tcal' type="text" name="txtG1D2" value=""></td>
    <td><input type="text" name="txtG1P2" value=""></td>
    <td><input size="100" type="text" name="txtG1RD2" value=""></td>
    <td>$<input type="text" name="txtG1RT2" value="00.0"></td>
</tr>
<tr>
    <td><input class='tcal' type="text" name="txtG1D3" value=""></td>
    <td><input type="text" name="txtG1P3" value=""></td>
    <td><input size="100" type="text" name="txtG1RD3" value=""></td>
    <td>$<input type="text" name="txtG1RT3" value="00.0"></td>
</tr>
<tr>
    <td><input class='tcal' type="text" name="txtG1D4" value=""></td>
    <td><input type="text" name="txtG1P4" value=""></td>
    <td><input size="100" type="text" name="txtG1RD4" value=""></td>
    <td>$<input type="text" name="txtG1RT4" value="00.0"></td>
</tr>
<tr>
    <td><input class='tcal' type="text" name="txtG1D5" value=""></td>
    <td><input type="text" name="txtG1P5" value=""></td>
    <td><input size="100" type="text" name="txtG1RD5" value=""></td>
    <td>$<input type="text" name="txtG1RT5" value="00.0"></td>
</tr>
<tr>
    <td><input class='tcal' type="text" name="txtG1D6" value=""></td>
    <td><input type="text" name="txtG1P6" value=""></td>
    <td><input size="100" type="text" name="txtG1RD6" value=""></td>
    <td>$<input type="text" name="txtG1RT6" value="00.0"></td>
</tr>
<tr>
    <td colspan="4">Group #2 <input type="text" name="txtGroup2" size="80" value=""></td>
</tr>
<tr>
    <td><input type="text" name="txtG2D1" value=""></td>
    <td><input type="text" name="txtG2P1" value=""></td>
    <td><input size="100" type="text" name="txtG2RD1" value=""></td>
    <td>$<input type="text" name="txtG2RT1" value=""></td>
</tr>
<tr>
    <td><input type="text" name="txtG2D2" value=""></td>
    <td><input type="text" name="txtG2P2" value=""></td>
    <td><input size="100" type="text" name="txtG2RD2" value=""></td>
    <td>$<input type="text" name="txtG2RT2" value=""></td>
</tr>
<tr>
    <td><input type="text" name="txtG2D3" value=""></td>
    <td><input type="text" name="txtG2P3" value=""></td>
    <td><input size="100" type="text" name="txtG2RD3" value=""></td>
    <td>$<input type="text" name="txtG2RT3" value=""></td>
</tr>
<tr>
    <td><input type="text" name="txtG2D4" value=""></td>
    <td><input type="text" name="txtG2P4" value=""></td>
    <td><input size="100" type="text" name="txtG2RD4" value=""></td>
    <td>$<input type="text" name="txtG2RT4" value=""></td>
</tr>
<tr>
    <td><input type="text" name="txtG2D5" value=""></td>
    <td><input type="text" name="txtG2P5" value=""></td>
    <td><input size="100" type="text" name="txtG2RD5" value=""></td>
    <td>$<input type="text" name="txtG2RT5" value=""></td>
</tr>
<tr>
    <td><input type="text" name="txtG2D6" value=""></td>
    <td><input type="text" name="txtG2P6" value=""></td>
    <td><input size="100" type="text" name="txtG2RD6" value=""></td>
    <td>$<input type="text" name="txtG2RT6" value=""></td>
</tr>

如果您真的想在PHP中这样做,您可以这样做:

<?php
    $groups = 2; //number of groups
    $rows = 4; //number of rows per group
    $tcalS = Array( 0 ); //groups that should be marked tcal, 0 is group 1
?>
    <table>
<?php
        for( $g = 0; $g < $groups; ++$g )
        {
?>
            <tr>
                <td colspan="4">Group #<?php echo $g; ?><input type="text" name="txtGroup<?php echo $g; ?>" size="80" value=""></td>
            </tr>
<?php
            for( $r=0; $r < $rows; ++$r )
            {
                addRow( $r, $g, in_array( $g, $tcalS ) );
            }
        }
?>
    </table>
<?php

    function addRow( $rowNum, $groupNum, $bIsTcal )
    {
        $nameD = 'txtG'.$groupNum.'D'.$rowNum;
        $nameRD = 'txtG'.$groupNum.'RD'.$rowNum;
        $nameRT = 'txtG'.$groupNum.'RT'.$rowNum;
        $nameP = 'txtG'.$groupNum.'P'.$rowNum;
?>
        <tr>
            <td><input <?php echo $bIsTcal ? 'class="tcal"' : ''; ?> type="text" name="<?php echo $nameD; ?>" value=""></td>
            <td><input type="text" name="<?php echo $nameP; ?>" value="P-"></td>
            <td><input size="100" type="text" name="" value="<?php echo $nameRD; ?>"></td>
            <td>$<input type="text" name="<?php echo $nameRT; ?>" value="00.0"></td>
        </tr>
<?php
    }
?>

但是肯定有其他更好的方法