它似乎die()
,exit()
运行以下php而不是HTML的唯一块。
如何使用 php if else 语句来显示 html?我不喜欢 echo,因为我想阻止用户查看我的整个代码(从 <body
> 到 </body>
)
当文件由 php 执行时,die()
或exit()
停止所有脚本,甚至是 html 输出:
<?php
header('Content-Type: text/plain; charset=utf-8');
?>
<html>
<?php exit(); ?>
</html>
输出:
<html>
另一种选择是使用 return
停止通用脚本:
<?php
header('Content-Type: text/plain; charset=utf-8');
?>
<html>
<?php return; ?>
</html>
但它只会停止当前脚本。
是的,您可以使用条件语句来控制输出,如下所示:
<?php
header('Content-Type: text/plain; charset=utf-8');
$showbody = false;
?>
<html>
<?php if($showbody): ?>
<body>
Here is the body!
</body>
<?php endif; ?>
</html>
输出:
<html>
</html>
<?php
if(false){
die();
}else{ php?>
<body>
</body>
<?php }?>
这很丑陋,但我认为这就是你要找的
您将需要使用 PHP 的输出缓冲函数。
基本上,如果您没有启用输出缓冲,只要包含回显,打印或html,它就会立即开始发送到客户端。启用输出缓冲后,所有内容都将被存储,您可以控制何时甚至是否发送。