如何使用 css 为 php 迭代值设置样式表

Posted

技术标签:

【中文标题】如何使用 css 为 php 迭代值设置样式表【英文标题】:How to use css to style table for php iteration values 【发布时间】:2021-08-10 08:21:51 【问题描述】:

我正在尝试创建用 php 完成的冰雹序列表。

这是我生成序列的简单代码:

<?php
            function HailstoneNumbers($x)
                static $c;
                echo $x." ";
                if ($x == 1 && $c == 0)
                    // N is initially 1.
                    echo "got 1!";
                    return $c;
                    
                else if ($x == 1 && $c != 0)
                    // N is reduced to 1.
                    $c++;
                    echo "Done! number of steps = ",$c;
                    
                else if ($x % 2 == 0)
                    // If N is Even.
                    $c++;
                    HailstoneNumbers((int)($x / 2));
                    
                else if ($x % 2 != 0)
                    // N is Odd.
                    $c++;
                    HailstoneNumbers(3 * $x + 1);
                    
                return $c;
                
            $x = $_GET['x'];
            if(isset($_GET['x']))
                $N = HailstoneNumbers($x);
            
                ?>

它负责创造价值:

但是,我想创建一个这种风格的表格:

它是 2 行 n 列,其中 n 是迭代的总数。

标题元素以粗体显示,左右条目用边框分隔。

每个条目的底部都有一个边框,最后一个条目除外。

我对 php 很陌生。我需要将步骤数与列数联系起来并设置样式,但是如何为此创建 css 文档?

【问题讨论】:

通过 PHP 添加 html 后,您可以选择内联 CSS(由 PHP 编写)或将 CSS 放入单独的文件中。第一个在某种程度上更简单,但如果您想更改布局,后者会更灵活。你想要哪个? 我会说css也内联。 【参考方案1】:

只需添加一些 html。您可以添加边框 css 以获得精确的外观。

echo '<table style="border: 1px solid">
        <thead>
        <tr>
            <td>Iteration</td>
            <td>X</td>
        </tr>
        </thead>
        <tbody>';
function HailstoneNumbers($x)
    static $c = 0;
    // echo $x." ";
    echo '<tr>
            <td>'.$c.'</td>
            <td>'.$x.'</td>
        </tr>';
    if ($x == 1 && $c == 0)
        // N is initially 1.
        echo "got 1!";
        return $c;
    
    else if ($x == 1 && $c != 0)
        // N is reduced to 1.
        $c++;
        // echo "Done! number of steps = ",$c;
    
    else if ($x % 2 == 0)
        // If N is Even.
        $c++;
        HailstoneNumbers((int)($x / 2));
    
    else if ($x % 2 != 0)
        // N is Odd.
        $c++;
        HailstoneNumbers(3 * $x + 1);
    
    return $c;

【讨论】:

以上是关于如何使用 css 为 php 迭代值设置样式表的主要内容,如果未能解决你的问题,请参考以下文章

如何使用css改变某个元素的文本颜色

如何在php中设置电子邮件正文的样式[重复]

您将如何使用 CSS 设置 PHP 后缀的样式?

css样式表中如何设置table的第一列的宽度是固定值。页面中有很多table纵向排列

如何让表单默认为浏览器样式

css样式表中如何设置table的第一列的宽度是固定值。页面中有很多table纵向排列