这是基本问题
`<li class="li-btn">a class="custom-btn custom-btn--small custom-btn--style-4" <? if ($user == ""){
echo "href=\"xxx://www.example.com/login.php\">Member Login</a>>";
}
elseif ($user != ""){
echo "href=\"xxx://www.example.com/mycp.php\">$user</a>>"; } ?></li>`:
工作正常,但抛出一个未定义的数组键:输出:
`<li class="li-btn"><a class="custom-btn custom-btn--small custom-btn--style-4" href="xxx://www.example.com/login.php">Member Login</a>></li>`
但是,如果我使用:
`if(isset($user) && $user == ''){
echo "href=\"xxx://www.example.com/login.php\">Member Login</a>>";`
整个页面乱了,输出是:
<li class="li-btn"> <a class="custom-btn custom-btn--small custom-btn--style-4" </li>
除了很长的空白和格式混乱的页面之外,没有任何输出。
不知道为什么,也无法弄清楚为什么 if ($user == ""){ 有效,为什么不行 if(isset($user) && $user == ''){
感谢任何想法
使用empty($user) 对未设置值和空值进行更安全、更简洁的检查
`<li class="li-btn">a class="custom-btn custom-btn--small custom-btn--style-4" <? if (empty($user)) {
echo "href=\"xxx://www.example.com/login.php\">Member Login</a>>";
}
} else {
echo "href=\"xxx://www.example.com/mycp.php\">$user</a>>"; } ?></li>`: