foreach( $users as $u ) {
echo '<tr><td>' . $u->nome . '</td><td>' . $u->username . '</td><td>' . $u->email . '</td><td>' . ( $u->acesso == 1 ? '<b>Administrador</b>' : 'Aluno' ) . '</td><td><a href="/website/admineditar.php?id=' . $u->id . '">Alterar</a> <a href="/website/adminremover.php?id=' . $u->id . '" onclick="return confirm(\'Deseja mesmo remover este utilizador?\');">Remover</a></td></tr>';
}
所以我的问题就在这部分
( $u->acesso == 1 ? '<b>Administrador</b>' : 'Aluno' )
我希望它可以做这样的事情
( $u->acesso == 1 ? '<b>Administrador</b>' : $u->acesso == 0 ? 'Aluno' : 'Enc. educação' )
但不知道该怎么做。我尝试使用if
和elseif
,但却给了我一个错误。
答案 0 :(得分:0)
如果您正在尝试创建多角色系统,则应首先通过不同的角色编号1,2,3设置用户的角色(Administrador,Aluno或Enc.educação),例如在用户对象内部,然后允许相应的访问。
至于嵌套三元组,你可以这样做:
$u->acesso === 1 ? 'Administrador': ($u->acesso === 2 ? 'Aluno' : 'Enc. educação' );
在这种情况下,Administrator为1,Aluno为2,Enc.educação为其他所有内容。注意===,它检查变量的类型为$ u-&gt;如果$ u-&gt; acesso是0或false之外的所有内容,则acesso == 1将评估为true;在php ==中不检查变量类型(int,string,object等。)
答案 1 :(得分:0)
毕竟解决了......这是我一小时后解决的问题...... tnhx对所有降级问题的人都毫不费力地回答......非常聪明地低估了你无法回答的事情......
无论如何,我得到的解决方案......
foreach( $users as $u ) {
echo '<tr><td>' . $u->nome . '</td><td>' . $u->username . '</td><td>' . $u->email . '</td><td>' ;
if ( $u->acesso == 1) {
echo '<b>Administrador</b>';
}elseif ( $u->acesso == 2) {
echo 'Enc. Educação';
}else{
echo 'Aluno';
}
echo '</td><td><a href="/website/admineditar.php?id=' . $u->id . '">Alterar</a> <a href="/website/adminremover.php?id=' . $u->id . '" onclick="return confirm(\'Deseja mesmo remover este utilizador?\');">Remover</a></td></tr>';
}