修改这个PHP代码片段:只显示给属于角色X的用户,不属于角色Y的用户


Modifying this PHP snippet: Show this only to users that belong to role X, AND does not belong to role Y

我得到了这个PHP代码片段,它允许我只向经过身份验证的用户显示选项卡。我如何修改它,只显示如果它属于那个角色,但不属于角色X?

<?php global $user; 
if (is_array($user->roles) && in_array('authenticated user', $user->roles)) {?> 
<?php if ($tabs): ?>
          <div id="content-tabs" class=""><?php print $tabs; ?></div><!-- /#content-tabs -->
        <?php endif; ?>
<?php } ?>  

我知道也许它应该包含一些像elseif,和负的!符号。但我该怎么做呢?谢谢你的帮助!!

Rosamunda

可以,您可以使用!运算符:

if (is_array($user->roles) &&
    in_array('authenticated user', $user->roles) &&
    !in_array('role X', $user->roles)) { ... }