2

有没有在 PHP 中使用枚举的替代方法?我只问是因为在 C# 中我有返回 emum 的方法,但在 PHP 中没有类似的东西存在。以下是虚构方法的一些可能的返回类型:

function login()
{
    // logged in
    // log in failed verify account
    // log in failed account suspended
    // log in failed account banned 
}

在 PHP 中做这样的事情的最好方法是什么?

4

2 回答 2

6

您可以使用类:

class LoginStatus
{
    const FailVerifyAccount = 0;
    const FailAccountSuspended = 1;
    const FailAccoutBanned = 2;
}

// how to use
$status = LoginStatus::FailVerifyAccount;

if ($status == LoginStatus::FailVerifyAccount) echo "Verify account";

或常量使用定义:

define("LOGIN_STATUS_VERIFY_ACCOUNT", 0);
define("LOGIN_STATUS_ACCOUNT_SUSPENDED", 1);
define("LOGIN_STATUS_ACCOUNT_BANNED", 2);

// how to use
$status = LOGIN_STATUS_VERIFY_ACCOUNT;

if ($status == LOGIN_STATUS_VERIFY_ACCOUNT) echo "Verify account";
于 2013-07-31T23:33:27.900 回答
0

我通常使用 php 位域

改进这个 PHP 位域类的设置/权限?

虽然该问题与权限有关,但可以轻松更改为使用帐户状态

于 2013-07-31T23:13:21.767 回答