شنبه یه خبراییه 🔥 منتظر شنبه باش 😉🥳
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ shilbon
فرق empty با isset
جامعه پی اچ پی ایجاد شده در ۲۸ دی ۱۴۰۱

فرق empty با isset رو میشه با زبان صاده‌تر بکین؟ من گیج شدم ممنون

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

isset برای چک کردن این هست که متغییری که بهش پاس میدیم تعریف شده یا نه؟ اگه تعریف شده باشه true و اگه نشده باشه false برمیگردونه. به مثال‌های زیر دقت کنید:

$str = "7Learn";
 
// Check value of $str variable is set or not
isset($str) ? "str is set" : "str is not set"; // Result: "str is set"
// Check undefined variable
isset($test) ? "test is set" : "test is not set"; // Result: "test is not set"

empty برای چک کردن اینه که متغییری که بهش میدیم خالی هست یا نه؟ اگه خالی باشه بهمون true میده اگه خالی نباشه false. به مثال‌های زیر دقت کنید:

// of empty() function
    $var1 = 0;
    $var2 = 0.0;
    $var3 = "0";
    $var4 = NULL;
    $var5 = false;
    $var6 = array();
    $var7 = "";
 
    // For value 0 as integer
    empty($var1) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For value 0.0 as float
    empty($var2) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For value 0 as string
    empty($var3) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For value Null
    empty($var4) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For value false
    empty($var5) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For array
    empty($var6) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For empty string
    empty($var7) ? print_r("True\\n") : print_r("False\\n"); // True
 
    // For not declare $var8
    empty($var8) ? print_r("True\\n") : print_r("False\\n"); // True

نکته: empty در خودش isset رو هم داره یعنی برابر این کد هست: !isset($var) || $var == false

برای اطلاعات بیشتر میتونید این مقاله رو مطالعه کنید.

صادق برزگر ۲۹ دی ۱۴۰۱، ۰۹:۵۲