Php在html中被注释掉了。

时间:2014-01-22 10:11:56

标签: php html

我创建了一个简单的html网页,其中包含html代码中的以下php代码。

<?php echo date('l, F jS, Y'); ?>

当我运行html页面并查看它显示的源代码时:

<!--?php echo date('l, F jS, Y'); ?-->

我做错了什么?为什么要被评论出来?

8 个答案:

答案 0 :(得分:37)

要运行PHP脚本,您必须将文件另存为.php文件。您还需要在服务器上执行它。您无法直接从浏览器运行php,因为PHP是一个HTML预处理器 - 您的浏览器与PHP无关,它只获取服务器生成的HTML。

因为PHP标签在HTML文件中无效,当服务器没有预处理时,浏览器无法识别它,因此它会自动将其转换为注释,因为它不知道还有什么用它。 / p>

答案 1 :(得分:12)

  

我做错了什么?

如果文件由Apache 提供,则您尚未启用php解释器在html文件上运行。 Apache(默认情况下)不会在html文件上运行php解释器。

  

为什么要被注释掉?

正如其他人所说,浏览器不知道如何处理php标记。



如果你想在html文件中解释php而不是将文件重命名为.php,那么你可以将.html扩展名添加到php解释器,如下所示:

AddType application/x-httpd-php .php .html

此行位于httpd.conf文件中。

我并不是说这是一种正确的方法,但我相信它确实回答了你的第一个问题。

答案 2 :(得分:4)

Reference

创建一个名为hello.php的文件,并将其放在Web服务器的根目录(DOCUMENT_ROOT)中,其中包含以下内容:

示例#1我们的第一个PHP脚本:hello.php

<html>
 <head>
  <title>PHP Test</title>
 </head>
 <body>
 <?php echo '<p>Hello World</p>'; ?> 
 </body>
</html>

使用浏览器访问带有Web服务器URL的文件,以/hello.php文件引用结束。在本地开发时,此URL将类似于http://localhost/hello.phphttp://127.0.0.1/hello.php,但这取决于Web服务器的配置。如果一切配置正确,PHP将解析此文件,并将以下输出发送到您的浏览器:

<html>
 <head>
  <title>PHP Test</title>
 </head>
 <body>
 <p>Hello World</p>
 </body>
</html>

答案 3 :(得分:4)

我知道这有点晚了,但我遇到了同样的问题并通过将文件从// www / [Project]更改为localhost / [Project]来修复它。

即使文件保存为.php,如果从文件系统打开文件,它也会注释掉PHP。

答案 4 :(得分:1)

在我的情况下,这是因为我的php代码出现语法错误。我输入

<? php
    phpinfo();
?>

代替

<?php
    phpinfo();
?>

<?php之间的空格让我头疼

答案 5 :(得分:0)

由于您无法直接在浏览器中运行PHP,因此您需要拥有一台服务器,同时需要一个.php文件才能执行PHP脚本。

答案 6 :(得分:0)

我无法使用 ampps 执行 php 的问题是我直接打开了 php 文件而不是通过 localhost

所以浏览器中的 url 是 file:///ampps/www/example.php,而它应该是 127.0.0.1/example.php

答案 7 :(得分:-1)

另一种可能性:我将 php 注释掉了,因为文件被保存为 Unicode,而不是 ANSI...