我对PHP有点新意。我想要做的是显示使用指向其主页的链接登录的用户名。这就是我所拥有的。
if (loggedin()) {
echo '<a href="HomePage.php"> $user->get_fullname($uid) </a>' ;
echo '<a href="logout.php"> Log Out </a>';
}
但是你可以看到它不会显示用户名,它会显示我在链接之间的内容。我不知道从哪里开始。
答案 0 :(得分:3)
你想要:
if(loggedin()){
echo '<a href ="HomePage.php">'. $user->get_fullname($uid) .'</a>' ;
echo '<a href="logout.php"> Log Out </a>';
}
else {
?>
php单引号中的不会解析变量。另一种语法是:
echo "<a href ='HomePage.php'> $user->get_fullname($uid) </a>" ;
答案 1 :(得分:3)
这是因为变量是在双引号内解释的,而不是单引号。有许多方法可以解决这个问题,例如将变量置于单引号之外,如:
echo '<a href ="HomePage.php">'. $user->get_fullname($uid). '</a>';
或用双引号替换单引号,反之亦然,因为它是一个复杂的变量,你需要使用大括号:
echo "<a href ='HomePage.php'>{$user->get_fullname($uid)}</a>";
始终使用双引号并转义内部引号:
echo "<a href =\"HomePage.php\">{$user->get_fullname($uid)}</a>";
最后,如果我有很多HTML代码,我最喜欢的方法是使用HEREDOC语法:
if(loggedin()){
echo <<<HTML
<a href ="HomePage.php">{$user->get_fullname($uid)}</a>
<a href="logout.php">Log Out</a>
HTML;
}
?>
注意:当使用HEREDOC表示法时,你不能在关闭HEREDOC线上的HEREDOC开放变量(甚至空间)和其他任何东西(甚至空间)之后放置任何东西。这就是关闭HTML的原因;这里没有缩进,因为它之前不允许空格。
答案 2 :(得分:0)
你必须用引号结束字符串并继续使用。运营商。使用。
将字符串与php变量连接起来if(loggedin()){
echo '<a href ="HomePage.php">'. $user->get_fullname($uid) .'</a>' ;
echo '<a href="logout.php"> Log Out </a>';
}
else {
//do something else
}
答案 3 :(得分:0)
if(loggedin()){
$userName = $user->get_fullname($uid);
if($userName == NULL) $userName = 'USER';
if(loggedin()){
echo "<a href ='HomePage.php'>".$userName."</a>";
echo " || <a href='logout.php'> Log Out </a>";
}else{
//if any other then you can...
}
答案 4 :(得分:-1)
如果你想在php中显示一些变量,它不应该用引号括起来,但是如果你想要显示一个字符串,你希望它在引号内。所以在你的情况下,你有两个所以你必须使用一个称为连接的东西,你使用点(。)[如果是javascript你使用加号(+)进行连接]。 所以你的代码必须像
if(loggedin()){
echo '<a href ="HomePage.php">'. $user->get_fullname($uid) .'</a>' ;
echo '<a href="logout.php"> Log Out </a>';
}
else {