为什么php echo print out ?消息


Why does php echo print out ?> message?

使用下面的代码,

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

我只想打印Hello World语句,但它也打印出;?>

检查完元素后,结果是这样的:

 <body>
    <!--?php echo '<p-->
    Hello World
    <p></p>
    "; ?>"
 </body>

您的网站被视为纯HTML。确保你有一个web服务器在运行:

如果您可以访问Gnu/Linux衍生版本的命令行,您可以通过以下方式启动PHP的内部服务器:

php -S 127.0.0.1:1337

这个命令必须在你的web根目录下启动,你应该在那里有一个index.php。然后你的代码运行良好。

从长远来看,你想要设置一个nginx或apache2。另一个要研究的方面是使用vagrant来设置创建开发环境的虚拟Linux机。

您试图直接在web浏览器中打开文件,但与HTML不同,您的浏览器无法理解PHP。

PHP需要在服务器端运行在Apache, Nginx或任何可行的web服务器之后,您的web浏览器将从该web服务器请求页面,这将请求PHP为您的浏览器提供完整生成的页面。

实际上,如果您第一次尝试PHP,您希望安装开发LAMP堆栈,例如WampServer(仅适用于Windows), XAMPP(适用于Linux, Windows, OS X)或MAMP(适用于OS X, Windows)。安装并运行此程序将很容易在您的计算机上设置web服务器。

我不会写一个关于如何使用LAMP堆栈的完整教程,但我可以推荐你阅读Kasia Mikoluk在Udemy上的文章。