gpt4 book ai didi

php - 使用 echo 输出 HTML 在 PHP 中被认为是不好的做法?

转载 作者:太空狗 更新时间:2023-10-29 13:32:49 25 4
gpt4 key购买 nike

在 PHP 中,我使用 if 语句来识别用户是否已登录,并根据结果显示主菜单(如果已登录)或“您如果没有,需要登录”消息。我这样做是这样的:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<link rel="stylesheet" href="style.css" type="text/css" />
<title>Home</title>
</head>
<body>
<div id="header">
<a href="index.php"><img src="wtcdblogo.png" alt="WTC DB logo" /></a>
</div>
<?php
if($_SESSION['loggedIn'] == 1) {
echo "<div id='main'>MAIN MENU stuff goes here</div>";
} else {
echo "<div id='main'>Please login...</div>";
}
?>
</body>
</html>

如您所见,显示主菜单或“请登录”消息的代码是由 echo 生成的。这是不好的做法,也许有更好的方法?

顺便说一下,我已经从上面代码片段中的 echo 中删除了大部分 HTML。主菜单由一个列表组成,但我没有费心把它包括在内,因为我猜它与问题无关。

最佳答案

我认为这是不好的做法。不确定其他人的想法。一方面,它在带有语法高亮的文本编辑器中看起来很糟糕,然后你不得不担心转义字符串等问题。

我是这样做的:

   <div>
<? if ($_SESSION['loggedIn'] === 1): ?>
<div id="main">Main Menu stuff goes here</div>
<? else: ?>
<div id="main">Please log in...</div>
<? endif ?>
</div>

您可以跳出 PHP 标记并直接使用 HTML。这样做有利也有弊。我喜欢它比 echo 更好。其他选项是根据 if 语句的结果向这些区域呈现新 View 。有很多可能性,但以上只是使它更清洁和(我认为)更好的一种方法。

关于php - 使用 echo 输出 HTML 在 PHP 中被认为是不好的做法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8318033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com