【问题标题】:What is phtml, and when should I use a .phtml extension rather than .php?什么是 phtml,什么时候应该使用 .phtml 扩展名而不是 .php?
【发布时间】:2012-08-08 06:43:17
【问题描述】:

我想知道 .phtml 和 .php 文件之间的区别是什么,以及何时使用一个而不是另一个。

【问题讨论】:

    标签: file-extension php


    【解决方案1】:

    就页面渲染而言,通常没有区别。但是,当您的 Web 项目变得更大时,它是一个巨大的设施开发者端。

    我以这种方式使用两者:

    • .PHP 页面不包含与视图相关的代码
    • .PHTML 页面包含很少(如果有的话)数据逻辑,其中大部分是与演示相关的

    【讨论】:

    • 好吧,所以使用 .phtml 扩展名而不是 .php 只是一种形式,用于表示一个更密集的 html 而不是 php 的文件。
    • 没错。利用不同的文件扩展名可以与不同的图标相关联这一事实,您还可以毫不费力地将它们区分开来(处理数十或数百个文件,仅将它们组织在文件夹中并不总是能做到这一点)。
    • 还有.phps PHP源文件。
    • .PHTML 仍然有效。我编写了以下代码并用 .phtml 保存它并没有运行 php 部分 <html> <body> <?php echo "hiiii"; ?> <div> <strong> everybody </strong> </div> </body> </html>
    • @dhpratik 检查你的服务器配置,扩展可能没有被正确处理。如果配置看起来没问题,最好单独作为一个 SO 问题
    【解决方案2】:

    .phtml 是 PHP 2 程序的标准文件扩展名。 .php3 接管了 PHP 3。当 PHP 4 出来时,他们直接切换到了 .php

    有时仍会使用较旧的文件扩展名,但并不常见。

    【讨论】:

      【解决方案3】:

      这是一个文件 ext,有些人用了一段时间来表示它是 PHP 生成的 HTML。由于像 Apache 这样的服务器并不关心你使用什么作为文件 ext,只要它被映射到某个东西,你可以继续调用你所有的 PHP 文件 .jimyBobSmith,它会很高兴地运行它们。 PHTML 恰好是一种流行了一段时间的趋势。

      【讨论】:

      • +1 for .jimmybobsmith 我可能会这样做一次,让团队中很多不知道这一点的人感到困惑。
      • 您必须在您的 apache.conf/httpd.conf 中注册扩展名...另一个技巧是 include 带有任何 php 扩展名的文件,它无论如何都会作为 php 运行。
      【解决方案4】:

      以 Alex 所说的为例,例如,如果您使用 Magento,.phtml 文件只能在 /design 区域中作为模板文件找到,并且包含 HTML 和 PHP 行。同时,PHP 文件是纯代码,其中没有任何 HTML 行。

      【讨论】:

        【解决方案5】:

        .phtml 文件告诉网络服务器这些是由服务器生成的具有动态内容的 html 文件......就像浏览器中的 .php 文件一样。

        因此,在生产性使用中,.phtml.php 文件应该没有区别。

        【讨论】:

        • phtml 通常从未被直接访问过。此外,phtml 在大多数网络服务器中通常没有配置为有效的 PHP 扩展。
        【解决方案6】:

        如果您正确设置 Apache,您可以选择世界上的任何扩展。 如果您在 Apache 配置中进行设置,则可以使用 .html 来执行 PHP。

        总之,扩展与应用或网站本身无关。您可以使用您想要的,但通常使用 .php(不要重新发明轮子)

        但是在2019年,你应该使用路由,最后忘记了扩展。

        我推荐你使用 Laravel。

        回答@KingCrunch:没错,Apache 默认不使用它,但如果您更改配置,您可以轻松使用它。但这不推荐,因为每个人都知道这不是一个真正的选择。

        我已经看到使用 html 扩展名执行 PHP 的 .html 文件。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-06-15
          • 2011-06-22
          • 2015-12-11
          • 2012-02-12
          • 2012-06-27
          • 2010-11-29
          • 2015-12-23
          相关资源
          最近更新 更多