کارایی return و false

کلا این return و false چی هست چیکار میکنه اینجا
بود و نبودش چه فرقی داره

function register($userData) {
    global $pdo;
    $passHash = password_hash($userData['password'],PASSWORD_BCRYPT);
    $sql = "INSERT INTO users (name,email,password) VALUES (:name,:email,:pass) ";
    $stmt =$pdo->prepare($sql);
    $stmt->execute([':name'=>$userData['name'],':email'=>$userData['email'],':pass'=>$passHash]);
    return $stmt->rowCount() ? true : false;
}

function login($email,$pass) {
    $user = getUserByEmail($email);
    if(is_null($user)){
        return false;
    }
    #check the password
    if(password_verify($pass, $user->password)) {
        # Login is successfull
        $user->image = "https://www.gravatar.com/avatar/" . md5( strtolower( trim( $user->email ) ) );
        $_SESSION['login'] = $user ;
        return true ;
    }
    return false ;
}

ثبت پرسش جدید
Davood
تخصص : PHP - Laravel
@dfardabasi 7 ماه پیش مطرح شد
2

سلام
وظیفه return این هست که اگر تابع شما خروجی داشته باشه یعنی void نباشه اون خروجی رو برا شما برمیگردونه
تصویر اول خط آخر اگه اون سطر به جدول شما اضافه بشه true برمیگردونه اگر اضافه نشه false یعنی اینکه اضافه نشده

تصویر دوم همینه false که return بشه یعنی تابعت خروجی نداشته و عملیات مورد نظر به هر دلیلی خطا بوده


میکائیل
تخصص : برنامه نویسی سمت سرور و کلاینت
@FullStack 7 ماه پیش مطرح شد
0

سلام خسته نباشید دوست عزیز
ببینید return همونطور که از اسمش مشخصه میشه برگشت خوب کارت اینه که یک مقدار بازگشتی داره هر متدی که return یا مقدار باز گشتی نداشته باشه از نوع void هست یعنی بدون بازگشت و توی اون متد یا تابع هیچ retun به کار نرفته چون چیزیو بر نمیگردونه اما اگه متدی return داشته باشه یعنی قراره یه مقداری رو بر گردونه حالا ممکنه این مقدار از نوع رشته باشه یا اعداد یا مثل همین تابعی که گذاشتید اعداد منطقی رو بر گردونه ارایه و ... خوب این false هم جزو اعداد منطقیه و این return داخل این تابع که گفتید کارش چیه اینه که یه شرط رو به روش هست

return $stmt->rowCount() ? true : false;

میگه اگه این rowCount مقدار داشت یا مثلا بزرگ تر از 0 بود مقدارش که یعنی مقدار داره بیاد و true بر گردونه در غیر این صورت false که اعداد منطقی یا true (درست) یا false (نادرست) هستن


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام