Php(使用数组的表)

时间:2017-11-27 17:11:28

标签: php html html-table

我如何创建一个带有PHP数组的表。数组由html输入决定。该表具有第一列中的实际值,第二列中的长度,以及它是否以3个字母,3个数字或第三列中的两个字母开头。

echo '<table>';
    foreach ($array as $key => $value) {
        echo '<tr><td>';
        echo htmlspecialchars($array);
        echo '</td><td>';
        echo strlen($array);
        echo '</td><td>';

            //to work on
            $trim = substr($array, 0, 3);
                if(is_numeric($trim)){
                    echo 'numeric';
                }elseif(is_string($trim)){
                    echo 'string';
                }else{
                    echo 'else ?';
                }

        echo '</td></tr>';
        }
    echo '</table>';

1 个答案:

答案 0 :(得分:0)

PHP会将名称中括号的POST值解释为数组。

<form method="POST">
    <input type="text" name="values[]" >
    <input type="text" name="values[]" >
    <input type="text" name="values[]" >
    <button type="submit">Go</button>
</form>

现在......这里介绍的解决方案只是为了让您入门。第三列可能有点棘手,因为' ab123c '的值将作为字符串传递。

我会让你按照你希望他们处理的方式解决问题。

if(is_array($_POST['values'])){
    echo '<table>';
        foreach ($_POST['values'] as $key => $value) {
            echo '<tr><td>';
            echo htmlspecialchars($value);
            echo '</td><td>';
            echo strlen($value);
            echo '</td><td>';

                //to work on
                $trim = substr($value, 0, 3);
                    if(is_numeric($trim)){
                        echo 'numeric';
                    }elseif(is_string($trim)){
                        echo 'string';
                    }else{
                        echo 'else ?';
                    }

            echo '</td></tr>';
            }
        echo '</table>';
}

PS:绝不信任用户输入;)

我知道代码不是干净利落,目标是让它易于理解。