在另一个包含 if 语句的变量字符串中插入一个变量

时间:2020-12-26 10:15:25

标签: php html

我有一个如下的字符串并将其存储在变量中:

$div = '<div class="posts"> . $row['author'] .'<?php if('.$perm.'>1):?><br>&emsp;&emsp;'.$role.'</br>&emsp;&emsp;<a href="EditPage.php">Edit</a><?php endif ?></div>

我想要的是在另一个页面中使用这个变量,所以我需要插入 if 语句来调节权限,这样内容只与 1 以上的用户一起显示。它没有语法错误,但是当我运行它时发生

John1):?>
Moderator
Edit 

所以 1):?> 在不应该显示的时候被显示。

有什么原因吗?或者我怎样才能做得更好?

谢谢。

2 个答案:

答案 0 :(得分:0)

你能不能试试这样:

$div ='<div class="posts">'.$row['author'].''; ?> <?php if($perm>1) {'<br>&emsp;&emsp;'.$role.'</br>&emsp;&emsp;<a href="EditPage.php">Edit</a>';} ''

我认为它带有单引号 ' 的格式不正确,请检查并让我们看看它是否是。

答案 1 :(得分:0)

试试这样的条件运算符。 div 部分保留在两个语句中只是为了提高可读性。

$div = if('.$perm.'>1) ? ('<div class="posts"> . $row['author'] . <br>&emsp;&emsp;'.$role.'</br>&emsp;&emsp;<a href="EditPage.php">Edit</a><div>') : ('<div class="posts"> . $row['author'] .'<div>');

或者:

$div = '<div class="posts"> . $row['author'] .';
$div += if('.$perm.'>1) ? '<br>&emsp;&emsp;'.$role.'</br>&emsp;&emsp;<a href="EditPage.php">Edit</a><div>' : '<div>';
相关问题