我试图让我的工具/脚本确定登录用户是否拥有使用该工具的正确权限。然而,不和谐的反应是允许的int。
似乎我必须使用逐位运算符检查权限,但从我搜索或搜索的所有内容来看,我发现的几乎所有内容似乎都完全无关紧要。
示例权限:2146958591
权限引用;
// General generalCreateInstantInvite: 0x1, generalKickMembers: 0x2, generalBanMembers: 0x4, generalAdministrator: 0x8, generalManageChannels: 0x10, generalManageServer: 0x20, generalChangeNickname: 0x4000000, generalManageNicknames: 0x8000000, generalManageRoles: 0x10000000, generalManageWebhooks: 0x20000000, generalManageEmojis: 0x40000000, generalViewAuditLog: 0x80, // Text textAddReactions: 0x40, textReadMessages: 0x400, textSendMessages: 0x800, textSendTTSMessages: 0x1000, textManageMessages: 0x2000, textEmbedLinks: 0x4000, textAttachFiles: 0x8000, textReadMessageHistory: 0x10000, textMentionEveryone: 0x20000, textUseExternalEmojis: 0x40000, // Voice voiceViewChannel: 0x400, voiceConnect: 0x100000, voiceSpeak: 0x200000, voiceMuteMembers: 0x400000, voiceDeafenMembers: 0x800000, voiceMoveMembers: 0x1000000, voiceUseVAD: 0x2000000是否有一个工具或样例脚本,我可以研究,以确定如何进行计算?
提前谢谢你!
发布于 2017-10-30 16:28:16
若要检查给定的权限值是否具有选定的权限,请使用按位和运算符。
这方面的例子:
$canKickMembers = ($permissionCode & 0x2) != 0;https://stackoverflow.com/questions/47019863
复制相似问题