What is a more elegant solution to these nested if/elseif statements?

后端 未结 9 1882
野趣味
野趣味 2021-01-12 17:09

I\'m building a website that contains users with user profiles. Many of the fields in the profile are optional.

There is an opportunity for a lot of user-generate

9条回答
  •  春和景丽
    2021-01-12 17:47

    It is not much, but because $name it is at least NULL:

    public function nameify($names = NULL) {
        $name = 'NULL';
        if (!empty($names)) {
            if (!empty($names['display_name'])) {
                $name = $names['display_name'];
            } elseif (!empty($names['first_name'])) {
                $name = $names['first_name'];
                if (!empty($names['last_name'])) {
                    $name .= ' ' . $names['last_name'];
                }
            } elseif (!empty($names['last_name'])) {
                $name = $names['last_name'];
            }
    
            if ($name=='NULL' && !empty($names['id'])) {
                $name = 'user' . $names['id'];
            } 
        } 
        return $name;
    }
    

提交回复
热议问题