4

这更像是一个疑惑而不是技术问题,如果这个问题看起来很愚蠢或者答案对某些人来说是显而易见的,我很抱歉,但我想知道......

总是回显您需要编写的任何 HTML 或在需要编写 HTML 并在之后重新打开时关闭 PHP 标记会更好吗?本质上将 PHP 嵌入 HTML 中?

以下是每个示例:

                for($x=0;$x<count($customers);$x++)
            {

                echo '<tr>';
                echo '<td><a class=summary href=mailto:'.$customers[$x]["Email"].'>'.$customers[$x]["Email"].'</td>';
                echo '<td>'.$customers[$x]["Title"].'</td>';
                echo '<td>'.$customers[$x]["FirstName"].'</td>';
                echo '<td>'.$customers[$x]["Surname"].'</td>';
                echo '<td>'.$customers[$x]["DeliveryCountryID"].'</td>';
                echo '<td>'.$customers[$x]["LanguageID"].'</td>';
                echo '</tr>';
            }

显示所有 HTML 都被回显

                <?php
                for($x=0;$x<count($customers);$x++)
                {
            ?>
                    <tr>
                    <td><?=$customers[$x]["Email"]?></td>
                    <td><?=$customers[$x]["Title"]?></td>
                    <td><?=$customers[$x]["FirstName"]?></td>
                    <td><?=$customers[$x]["Surname"]?></td>
                    <td><?=$customers[$x]["DeliveryCountryID"]?></td>
                    <td><?=$customers[$x]["LanguageID"]?></td>
                    </tr>
            <?php
                }
?>

有在 HTML 中嵌入 PHP 的示例。

我问的原因是因为我刚开始我的编程生涯,我的经验不足,我加入了一家公司,他们的老开发人员显然比我更有经验,回应了一切。

我从来没有这样做过,因为我喜欢将 PHP 嵌入到我的 HTML 中,而且我发现他的代码有时难以阅读。

他这样做是有原因的,还是最好的方式,或者值得我慢慢地改变代码,让它更像我做事的方式?

4

4 回答 4

0

有很多方法可以回显您的代码。你不能认为这是最好的方法。

一切都取决于你。你喜欢什么?在我的路上,我喜欢在 HTML 中嵌入 PHP(第二种方法)。但可能是其他的,比如在 php 中回显所有 HTML 代码。

整个事情取决于你。你选择什么。都一样

于 2013-03-28T12:19:01.917 回答
0

最好的方法是使用 Smarty 之类的模板引擎,并将您的业务逻辑和表示分离。这为您的代码提供了更大的灵活性。

在您的情况下,我更喜欢第二种方法("<td><?=$customers[$x]["Email"]?></td>"),因为它易于阅读和理解。这还有两个好处,

  1. 如果您有其他人(例如设计师)在应用程序上工作,那么对他来说进行更改会更容易。
  2. 将来,如果您决定使用模板引擎,您可以轻松地转换您的代码。
于 2013-03-28T12:24:10.243 回答
0

首先问问自己“更好”是什么意思。

如果“更好”是更具可读性的东西,您可能会面临以下问题:

  1. 在 HTML 代码中,如果有一些<?php echo $var[attr]; ?>你很容易错过它们。
  2. 在 PHP 代码中,如果有很多echo '<tr><td ............................ ';你可能无法理解里面的内容,特别是如果你有很多转义字符。您必须添加换行符。

我的回答:这取决于对您来说更重要的是什么:HTML?使用 1. PHP?使用 2。

如果“更好”比使用 1 更快,那么解析越少,耗时越少。但是这个时间真的很重要吗?

如果“更好”是更短且占用内存更少的内容,则 HTML 文件的文本更少。但是这些字节真的很重要吗?

无论如何,我总是避免合并这两种方法,例如:

<div>
  <p>Some text....</p>
<!-- some other stuff like lots of form fields -->
<?php
// some php code
echo '</div>';

这是因为在 IDE 中,如果不查看 PHP,您可以更轻松地找到未关闭标签等错误。

于 2013-03-28T12:25:32.027 回答
0

这是个人喜好,但我见过的最常见的做法是以 HTML 为基础并在必要时插入 PHP。正如其他人所说,将您的业务逻辑与您的演示分开。为函数或代码隐藏使用单独的目录,然后在文档的开头执行 include_once。这样,您的演示代码是相当简单的 HTML(通常对设计人员来说更容易处理),并且 PHP 用于插入需要的内容。

当 PHP 像 CMS 一样使用或使用数据库驱动的 Web 内容时,这尤其有用。尽可能将你的逻辑与你的演示分开。

于 2013-03-28T12:33:44.287 回答