我想在php中回应一些php代码:
if(isset($_SESSION['id'])){
echo "<li><a href='profile.php'><?php echo $profile ?></a></li>";
}else{
echo "<li><a href='login.php'>login</a></li>";
}
$profile
有3种语言,这就是为什么它是一个变量。
此代码对我不起作用。它什么也没有回应。我怎么能回复PHP代码?
答案 0 :(得分:4)
只需使用concatenation operator .
,就像这样:
echo "<li><a href='profile.php'>" . $profile . "</a></li>";
答案 1 :(得分:3)
if(isset($_SESSION['id'])){
echo "<li><a href='profile.php'>$profile</a></li>";
}else{
echo "<li><a href='login.php'>login</a></li>";
}
答案 2 :(得分:3)
你可以选择。您可以使用双引号("
)或单引号('
)。区别在于双引号不需要连接:
双引号:
echo "<li><a href='profile.php'>$profile</a></li>";
单引号:
echo '<li><a href="profile.php">' . $profile . '</a></li>';
答案 3 :(得分:2)
逃离翻译。
echo "<li><a href='profile.php'>", $profile ,"</a></li>";
就是这样。
答案 4 :(得分:2)
由于您正在使用双"
s,因此将处理字符串而不连接。
echo "<li><a href='profile.php'>$profile</a></li>";
如果您要处理美国货币的价格,您可以连接,您需要将$
字符作为字面值。但是除了代码可读性之外真的没有必要。
echo 'Price: $'.$profile;
这样的代码使您能够对内容进行检查,验证信息并保持PHP的动态功能。然而,如果你混合使用HTML和PHP,那么你将遇到一些问题,你必须重写大的部分,以便将来能够创造一些动态的东西。
理想情况下,您可以在PHP中创建所有内容:
<?php
$mystring = "<ul>";
if(isset($_SESSION['id'])){
$mystring .= "<li><a href='profile.php'>$profile</a></li>";
}else{
$mystring .= "<li><a href='login.php'>login</a></li>";
}
$mystring .= "</ul>";
$page .= $mystring;
if ($dynamic_site == 1){
print $page;
} else {
//For static caching (much faster)
fwrite ...
}
?>
答案 5 :(得分:2)
这是一个多余的答案,因为其他人已经说过了,但你真的应该避免在php中打印html。相反,打破php写html:
<?php if(isset($_SESSION['id'])): ?>
<li><a href='profile.php'><?php echo $profile ?></a></li>
<?php else: ?>
<li><a href='login.php'>login</a></li>
<?php endif; ?>
并不是说它不起作用,它只是更干净......根据我想的一般意见。
答案 6 :(得分:2)
还需要一个答案:
<?php
echo isset($_SESSION['id']) ? '<li><a href="profile.php">' . $profile . '</a></li>' : '<li><a href="login.php">login</a></li>';
?>
答案 7 :(得分:1)
if(isset($_SESSION['id'])){
echo '<li><a href="profile.php">' . $profile . '</a></li>';
}else{
echo '<li><a href="login.php">login</a></li>';
}
答案 8 :(得分:1)
你的错误在于你不能在PHP标签中使用PHP标签。
如果使用双引号,则只需将变量直接包含在字符串中即可。
if(isset($_SESSION['id'])){
echo "<li><a href='profile.php'>$profile</a></li>";
}else{
echo "<li><a href='login.php'>login</a></li>";
}
问题解决了。