【问题标题】:What is the difference between php and html file extensions?php和html文件扩展名有什么区别?
【发布时间】:2011-10-10 05:57:31
【问题描述】:

我有一个带有以下代码的.php 文件。虽然我将文件的扩展名更改为.html,但它的行为方式也相同。谁能解释一下:

  1. 为什么文件的行为方式与两者相同 扩展?
  2. .php 和 .html 文件扩展名有什么区别?

.php文件

<html>

     <head>
          <!-- some html code -->
     </head>

     <body>
          <?php echo "Hello!" ?>
     </body>

</html>

【问题讨论】:

  • “打开”是什么意思?就像在文本编辑器中打开它一样,或者让它由网络服务器(如 Apache)提供服务?
  • 真的是这样吗?你看到“你好!”以 .html 格式查看文件时?
  • 我猜你会在浏览器中看到 !
  • @Cygnusx1 不,它显示的是“你好!”
  • 好的,就像其他响应一样,您的网络服务器以相同的方式处理 .php 和 .html 文件......所以您的 html 中的 php 标签将在服务器端执行并放入返回html.

标签: php html web file-extension


【解决方案1】:

PhP 是服务器端。

HTML 是客户端。

另外,在网络上,文件类型毫无意义。它们被 !DOCTYPE 声明覆盖。

【讨论】:

    【解决方案2】:

    不同之处在于您的网络服务器是如何配置的,或者当您尝试在本地运行文件时是否需要网络服务器(即,在您当前使用的计算机上使用它们)。

    例如,如果您要在未安装 Web 服务器的计算机上运行这两个版本,.html 文件将在浏览器中正常打开,但无需对任何 PHP 标记进行任何操作。但是,.php 文件不一定会运行,浏览器甚至可能会尝试“下载”该文件。

    文件扩展名的作用是告诉计算机如何处理给定的扩展名。就像您的计算机将在文字处理器中打开 .doc 文件,或在基本文本编辑器中打开 .txt 文件一样。就像您可以告诉您的计算机在文字处理器中打开 .txt 文件一样,您可以告诉 Web 服务器以与 .php 文件相同的方式处理 .html 文件(这显然是您的设置)。

    【讨论】:

      【解决方案3】:

      扩展是您的操作系统如何识别您的文件并决定如何处理它,即应该使用哪个应用程序打开它。

      php 是一种服务器端脚本语言。它由安装了 php 的 Web 服务器解释。例如,在 XAMPP 中,XAMPP/php 文件夹中的 php.exe 文件解释 php 文件/命令。

      HTML 是通过 Internet 发送信息的标准。因此,无论您使用哪种服务器端脚本语言,文件的最终结果都是一个 html 页面。您使用的网络服务器将处理 php 命令并将它们转换为相应的 html 并将它们发送到您的浏览器。然后浏览器处理(编译)html 代码以显示您的网页。

      HTML 基本上就是您在浏览器上看到的所有内容。 PHP 用于与 Web 服务器交互并处理用户通过表单输入到 Web 浏览器中的信息,或在链接下执行底层第三方脚本(例如 TCL 脚本)以在后台隐藏在网站上使用或解析 XML 文件或从数据库中提取信息或维护会话信息等的用户。

      一般来说,PHP 处理 Web 应用程序与配置为运行 PHP 的服务器的交互。 HTML 只是将结果转储到浏览器中。

      您可以这样想——HTML 就是您网站的外观... PHP 使您的网站变得智能,以便它可以与用户交互...

      您会得到相同的结果,因为 php 可以嵌入到 html 中,并且您的网络服务器会处理这两个文件以提供相同的结果。但是,如果您的网络服务器上没有安装 php,您将在浏览器中获得输出。

      【讨论】:

        【解决方案4】:

        PHP:Pre Hyper Processot:一种服务器端脚本语言 HTML:超文本标记语言

        ".php" 和 ".html" 只是文件扩展名,但是如果你想使用 php 代码,你必须在支持 php 的服务器上运行它。

        【讨论】:

          【解决方案5】:

          一个php表示它是使用PHP语言动态生成的。但是,您看到的不是最初编写的页面,而是最终结果。最终结果实际上是一个 html 文件。

          所以回答你的问题,对于客户端来说,一个以 php 或 html 结尾的页面将支持完全相同的内容(也就是说,一个 html 文档)。尽管浏览器不应该这样做,但它们经常尝试将对它们毫无意义的标签可视化(例如,浏览器解释 可能会决定“Hello”是要显示的文本)。

          虽然 html 真的不应该在其中包含 php 标签,因为它并不意味着在 html 文档中(php 文档被翻译成 html 文档,因此删除了 php 标签)。

          【讨论】:

            【解决方案6】:

            您可以将任何扩展设置为解析为 PHP,因此您的情况的区别仅在于扩展。如果您在 Apache 配置中禁用将 html 文件解析为 php,则 PHP 不会解析文件的内容。就是这样

            例如,您可以在 Apache 配置中添加任何扩展以供 php 解析,如下所示

            application/x-httpd-php myextension
            

            其中 myextension 是您要解析的文件的扩展名。

            【讨论】:

              【解决方案7】:

              据我所知,根据扩展名,Web 服务器将以一种或另一种方式处理您的文件。此外,例如,您可能有一个 PHP 文件,它不会生成任何 HTML 输出,但会重定向到另一个文件。

              如果你想给出一个以 *.html 结尾的页面,你可以通过编程来完成。

              【讨论】:

                【解决方案8】:

                您可以配置您的网络服务器以不同方式处理 .php 和 .html 文件。您的网络服务器配置为将两者都解释为 PHP。大多数服务器将 .php 作为 PHP 处理,并按原样提供 .html。也就是说,如果您将代码放在 HTML 文件中,PHP 代码将不会运行并会显示在输出中。

                有些人发现在 URL 中使用 .html 而不是 .php 更好。如果您的用户下载您的页面并尝试通过双击打开它们,这可能会很有用。

                【讨论】:

                  【解决方案9】:

                  php 是一种服务器端脚本语言。每个有标签 php 的东西

                  将由服务器生成并放入html响应中。

                  【讨论】:

                  • 这是配置相关的,Apache配置允许将HTML文件解析为php,如果禁用它就不会被解析。
                  【解决方案10】:

                  文件类型只是识别文件的一种方式,你不能总是信任它们。

                  根据您的网络服务器配置,您会看到不同的结果。

                  .html 通常只用于没有服务器端代码的 html。

                  .php 用于服务器端 php 代码和 html(如果需要)。

                  它们可以用于任何事情,这取决于设置。

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 2012-06-09
                    • 1970-01-01
                    • 2012-08-11
                    • 2011-05-06
                    • 2014-04-11
                    • 2010-12-05
                    • 1970-01-01
                    相关资源
                    最近更新 更多