根据用户登录显示项目

时间:2010-08-15 22:30:35

标签: php login

情况如下: 我有一个项目列表,其中一个是:

echo '<li><a href= "index.php" title="">Link</a></li>';

现在,我想在这里制作一个if语句 - 如果用户登录,请给home.php,否则给index.php - 但是我有点迷失在所有那些和那些.s所以我在寻求你的帮助

此代码不会执行:/

echo '<li><a href= "' . if($logged == 0) echo "index.php" else "home.php" . '" title="">Link</a></li>';

另外,我知道我可以用这段代码来做,但我想最终得到那些点和东西

if ($logged == 0) 
{
    echo '<li><a href= "index.php" title="">Link</a></li>';
}
else
{
    echo '<li><a href= "home.php" title="">Link</a></li>';
}

3 个答案:

答案 0 :(得分:0)

<?php echo '<li><a href="' . ($logged == 0) ? 'index.php' : 'home.php' . '" title="">Link</a></li>'; ?>

答案 1 :(得分:0)

如果您正在寻求简短的解决方案,请尝试以下方法:

<li><a href="<?php echo $logged ? 'home.php' : 'index.php'; ?>" title="">Link</a></li>

这称为三元运算符。如果$ logged的计算结果为true,则会打印'home.php',否则会打印'index.php'。

这是标准if-else表示法中的等效词:

<li><a href="<?php if($logged){ echo 'home.php';} else{ echo 'index.php';} ?>" title="">Link</a></li>

答案 2 :(得分:0)

你不能在echo参数中使用if和echo。

echo '<li><a href= "'. $logged == 0 ? "index.php" : "home.php" .'" title="">Link</a></li>';