我已经尝试过几次,但是没有运气。阅读this post之后,这使我对再次执行此操作感兴趣。那么谁能告诉我以下原因为何不起作用?

<?php

$guest = 1;
$editor = 2;
$admin = 4;

$user = $editor;

if( $user == ($editor | $admin) ) {
    echo "Test";
}

?>

最佳答案

使用按位“或”运算符(|)设置位,使用“与”运算符(&)检查位。您的代码应如下所示:

<?php

    $guest = 1;
    $editor = 2;
    $admin = 4;

    $user = $editor;

    if( $user & ($editor | $admin) ) {
        echo "Test";
    }

?>

如果您不了解二进制文件以及位运算符的确切含义,则应该学习它。您将了解如何更好地做到这一点。

关于php - 在PHP中实现权限,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17172/

10-12 20:27