روز برنامه‌نویس مبارک 🤩🎉 از هدایای روز برنامه‌نویس جا نمونی ⌛
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ سیدرضا بازیار
تمیز‌تر کردن کد در آموزش
جامعه پی اچ پی ایجاد شده در ۱۵ فروردین ۱۴۰۱

سلام. کلی که استاد اون رو تمیز کردند به کد زیر تبدیل شد:

class Autentication
{
    public function changePassword($email, $password, $nawPassword, $confirmNewPassword)
    {
        if (!isset($email, $password, $nawPassword, $confirmNewPassword)) {
            throw new Exception('Error');
        }
        if ($nawPassword != $confirmNewPassword) {
            throw new Exception('Error');
        }
        if (!User::login($email, $password)) {
            throw new Exception('Error');
        }
        User::setPassword($email, $nawPassword);
    }
}

میتونیم کد رو تمیز‌تر کنیم تا به شکل کد زیر در بیاد؟ (چون سه بار Exeption رو throw میکنه...)

class Autentication
{
    public function changePassword($email, $password, $nawPassword, $confirmNewPassword)
    {
        if (!isset($email, $password, $nawPassword, $confirmNewPassword) 
        and $nawPassword != $confirmNewPassword 
        and !User::login($email, $password))
            throw new Exception('Error');
        User::setPassword($email, $nawPassword);
    }
}

سلام دوست عزیز

بله میشه اما باید از OR استفاده کنید

بهترین پاسخ
محمد گازری ۱۵ فروردین ۱۴۰۱، ۱۶:۴۸