Pergunta

Estou modificando o código da minha rede PHP para ter "funções de usuário" como o WordPress aqui está o meu plano até agora

0 = Usuário verificado por e -mail não registrado
1 = Email Registrado e Verificado
2 = moderador
3-9 = nada ainda
10 = admin

No meu código PHP, usarei uma matriz como essa que definirá o que um número de função faz.

$user_role['10']

Eu estava pensando em armazenar qual valor um usuário tem no meu mysql db, essa seria a melhor maneira de armazenar as 10 opções de função diferentes como enumeração ou existe uma maneira melhor ou mais rápida? Eu li que enum não é o mais rápido às vezes.

enum('0','1','2','3','4','5','6','7','8','9','10')
Foi útil?

Solução

Eu acho INT ou TINYINT é suficiente para armazenar o nível do usuário (função). Além disso, você pode considerar multiplicar os números por 10, portanto, você terá um espaço para adicionar mais níveis no futuro.

Outras dicas

Use máscaras de bits para permissões / níveis de usuário.

Ver exemplo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top