آشنایی با انواع PHP – Booleans
Summarize this content to 400 words in Persian Lang
بولین چیست؟
در PHP، Boolean یک نوع داده است که فقط می تواند دو مقدار داشته باشد:
true: نمایانگر حالت مثبت یا مثبت است.
false: نشان دهنده حالت منفی یا کاذب است.
مقادیر بولی اغلب در دستورات شرطی، مقایسه ها و عملیات منطقی استفاده می شود. ذکر این نکته ضروری است که هر دو true و false حساس به حروف بزرگ و کوچک هستند بنابراین، true، True، truE، TRUE همه معتبر هستند
ایجاد متغیرهای بولی
با تخصیص مقادیر می توانید یک متغیر بولی ایجاد کنید true یا false مستقیم:
مثال:
<?php
$isAvailable = true; // Boolean variable set to true
$isLoggedIn = false; // Boolean variable set to false
var_dump($isAvailable); // Output: bool(true)
var_dump($isLoggedIn); // Output: bool(false)
?>
را var_dump() در اینجا از تابع برای نمایش نوع و مقدار متغیرها استفاده می شود.
تبدیل بولی
در PHP، بسیاری از انواع داده ها را می توان به Boolean تبدیل کرد. یک مقدار را می توان با استفاده از نوع بولی ریخت (bool). به طور کلی این امر ضروری نیست زیرا هنگامی که یک مقدار در یک زمینه منطقی استفاده می شود، به طور خودکار به عنوان مقدار نوع تفسیر می شود. bool.
هنگام تبدیل به بولی، مقادیر زیر برمی گردند false:
بولی false خود
مقدار عدد صحیح 0
مقادیر شناور 0.0 و -0.0
رشته خالی “”
رشته ای با یک صفر، “0”
یک آرایه خالی
نوع null
متغیرهایی که هستند unset
برخی از مقادیر پیچیده دیگر
تمام مقادیر دیگر در نظر گرفته شده است true، از جمله resource و NAN.
مثال:
<?php
$values = [0, 1, “”, “Hello”, [], [1, 2, 3], null, 0.0, 3.14];
foreach ($values as $value) {
var_dump((bool)$value);
}
?>
خروجی:
bool(false) // 0
bool(true) // 1
bool(false) // “”
bool(true) // “Hello”
bool(false) // []
bool(true) // [1, 2, 3]
bool(false) // null
bool(false) // 0.0
bool(true) // 3.14
استفاده از Booleans در دستورات شرطی
بولی ها عمدتاً در عبارات شرطی مانند if، else، و switch برای کنترل جریان برنامه
مثال:
<?php
$isUserLoggedIn = true;
if ($isUserLoggedIn) {
echo “Welcome, User!”; // This message will be displayed
} else {
echo “Please log in.”;
}
?>
در این مثال، از آنجایی که $isUserLoggedIn است true، پیام “Welcome, User!” نمایش داده خواهد شد.
مقایسه عملگرها و بولی ها
PHP عملگرهای مقایسه مختلفی را ارائه می دهد که مقادیر بولی را برمی گرداند:
برابری (==): بررسی می کند که آیا مقادیر برابر هستند.
هویت (===): بررسی می کند که آیا مقادیر و انواع یکسان هستند.
نابرابری (!= یا <>): بررسی می کند که آیا مقادیر برابر نیستند.
بی هویتی (!==): بررسی می کند که آیا مقادیر یا انواع یکسان نیستند.
بزرگتر از (>) و کمتر از (<): برای مقایسه عددی استفاده می شود.
مثال:
<?php
$a = 10;
$b = “10”;
var_dump($a == $b); // Output: bool(true) – values are equal
var_dump($a === $b); // Output: bool(false) – types are different
var_dump($a > 5); // Output: bool(true) – 10 is greater than 5
var_dump($a != 10); // Output: bool(false) – 10 is equal to 10
?>
عملگرهای منطقی و بولی ها
عملگرهای منطقی برای ترکیب یا نفی عبارات بولی استفاده می شوند:
&& (و): برمی گردد true اگر هر دو عملوند درست باشد.
|| (یا): برمی گردد true اگر حداقل یک عملوند درست باشد.
! (نه): یک عبارت بولی را نفی می کند.
مثال:
<?php
$isMember = true;
$hasPaid = false;
if ($isMember && $hasPaid) {
echo “Access granted.”; // Will not be executed
} else {
echo “Access denied.”; // Output: Access denied.
}
$isAdmin = !$isMember;
var_dump($isAdmin); // Output: bool(false) – negates true to false
?>
برخی از هشدارهای بولی
1. مقایسه های سست
با استفاده از == می تواند منجر به نتایج غیرمنتظره به دلیل شعبده بازی شود. همیشه استفاده کنید === برای مقایسه دقیق
مثال:
<?php
var_dump(0 == false); // Output: bool(true)
var_dump(0 === false); // Output: bool(false)
?>
در حالت اول، 0 و false برابر در نظر گرفته می شوند زیرا 0 در مقایسه ضعیف به نادرست تبدیل می شود.
2. ارزش های نادرست
ارزش های خاصی مانند 0، “0”، و آرایه های خالی در نظر گرفته می شوند false، که گاهی اوقات می تواند منجر به خطاهای منطقی شود.
مثال:
<?php
$var = “0”;
if ($var) {
echo “True”; // This will not be displayed
} else {
echo “False”; // Output: False
}
?>
3. ارزیابی اتصال کوتاه
عملگرهای منطقی && و || از ارزیابی اتصال کوتاه استفاده کنید. این بدان معناست که اگر نتیجه توسط عملوند اول تعیین شود، عملوند دوم ارزیابی نمی شود.
مثال:
<?php
$x = false && foo(); // foo() will not be called because $x is false
$y = true || foo(); // foo() will not be called because $y is true
?>
4. حساسیت به حروف کوچک
true و false به حروف بزرگ و کوچک حساس هستند، بنابراین True، FALSE، و fAlSe معتبر هستند اما برای ثبات توصیه نمی شوند.
بولین چیست؟
در PHP، Boolean یک نوع داده است که فقط می تواند دو مقدار داشته باشد:
-
true
: نمایانگر حالت مثبت یا مثبت است. -
false
: نشان دهنده حالت منفی یا کاذب است.
مقادیر بولی اغلب در دستورات شرطی، مقایسه ها و عملیات منطقی استفاده می شود. ذکر این نکته ضروری است که هر دو true
و false
حساس به حروف بزرگ و کوچک هستند بنابراین، true
، True
، truE
، TRUE
همه معتبر هستند
ایجاد متغیرهای بولی
با تخصیص مقادیر می توانید یک متغیر بولی ایجاد کنید true
یا false
مستقیم:
مثال:
<?php
$isAvailable = true; // Boolean variable set to true
$isLoggedIn = false; // Boolean variable set to false
var_dump($isAvailable); // Output: bool(true)
var_dump($isLoggedIn); // Output: bool(false)
?>
را var_dump()
در اینجا از تابع برای نمایش نوع و مقدار متغیرها استفاده می شود.
تبدیل بولی
در PHP، بسیاری از انواع داده ها را می توان به Boolean تبدیل کرد. یک مقدار را می توان با استفاده از نوع بولی ریخت (bool)
. به طور کلی این امر ضروری نیست زیرا هنگامی که یک مقدار در یک زمینه منطقی استفاده می شود، به طور خودکار به عنوان مقدار نوع تفسیر می شود. bool
.
هنگام تبدیل به بولی، مقادیر زیر برمی گردند false
:
- بولی
false
خود - مقدار عدد صحیح
0
- مقادیر شناور
0.0
و-0.0
- رشته خالی
""
- رشته ای با یک صفر،
"0"
- یک آرایه خالی
- نوع
null
- متغیرهایی که هستند
unset
- برخی از مقادیر پیچیده دیگر
تمام مقادیر دیگر در نظر گرفته شده است true
، از جمله resource
و NAN
.
مثال:
<?php
$values = [0, 1, "", "Hello", [], [1, 2, 3], null, 0.0, 3.14];
foreach ($values as $value) {
var_dump((bool)$value);
}
?>
خروجی:
bool(false) // 0
bool(true) // 1
bool(false) // ""
bool(true) // "Hello"
bool(false) // []
bool(true) // [1, 2, 3]
bool(false) // null
bool(false) // 0.0
bool(true) // 3.14
استفاده از Booleans در دستورات شرطی
بولی ها عمدتاً در عبارات شرطی مانند if
، else
، و switch
برای کنترل جریان برنامه
مثال:
<?php
$isUserLoggedIn = true;
if ($isUserLoggedIn) {
echo "Welcome, User!"; // This message will be displayed
} else {
echo "Please log in.";
}
?>
در این مثال، از آنجایی که $isUserLoggedIn
است true
، پیام “Welcome, User!”
نمایش داده خواهد شد.
مقایسه عملگرها و بولی ها
PHP عملگرهای مقایسه مختلفی را ارائه می دهد که مقادیر بولی را برمی گرداند:
-
برابری (
==
): بررسی می کند که آیا مقادیر برابر هستند. -
هویت (
===
): بررسی می کند که آیا مقادیر و انواع یکسان هستند. -
نابرابری (
!=
یا<>
): بررسی می کند که آیا مقادیر برابر نیستند. -
بی هویتی (
!==
): بررسی می کند که آیا مقادیر یا انواع یکسان نیستند. -
بزرگتر از (
>
) و کمتر از (<
): برای مقایسه عددی استفاده می شود.
مثال:
<?php
$a = 10;
$b = "10";
var_dump($a == $b); // Output: bool(true) - values are equal
var_dump($a === $b); // Output: bool(false) - types are different
var_dump($a > 5); // Output: bool(true) - 10 is greater than 5
var_dump($a != 10); // Output: bool(false) - 10 is equal to 10
?>
عملگرهای منطقی و بولی ها
عملگرهای منطقی برای ترکیب یا نفی عبارات بولی استفاده می شوند:
-
&&
(و): برمی گرددtrue
اگر هر دو عملوند درست باشد. -
||
(یا): برمی گرددtrue
اگر حداقل یک عملوند درست باشد. -
!
(نه): یک عبارت بولی را نفی می کند.
مثال:
<?php
$isMember = true;
$hasPaid = false;
if ($isMember && $hasPaid) {
echo "Access granted."; // Will not be executed
} else {
echo "Access denied."; // Output: Access denied.
}
$isAdmin = !$isMember;
var_dump($isAdmin); // Output: bool(false) - negates true to false
?>
برخی از هشدارهای بولی
1. مقایسه های سست
با استفاده از ==
می تواند منجر به نتایج غیرمنتظره به دلیل شعبده بازی شود. همیشه استفاده کنید ===
برای مقایسه دقیق
مثال:
<?php
var_dump(0 == false); // Output: bool(true)
var_dump(0 === false); // Output: bool(false)
?>
در حالت اول، 0 و false برابر در نظر گرفته می شوند زیرا 0 در مقایسه ضعیف به نادرست تبدیل می شود.
2. ارزش های نادرست
ارزش های خاصی مانند 0
، "0"
، و آرایه های خالی در نظر گرفته می شوند false
، که گاهی اوقات می تواند منجر به خطاهای منطقی شود.
مثال:
<?php
$var = "0";
if ($var) {
echo "True"; // This will not be displayed
} else {
echo "False"; // Output: False
}
?>
3. ارزیابی اتصال کوتاه
عملگرهای منطقی &&
و ||
از ارزیابی اتصال کوتاه استفاده کنید. این بدان معناست که اگر نتیجه توسط عملوند اول تعیین شود، عملوند دوم ارزیابی نمی شود.
مثال:
<?php
$x = false && foo(); // foo() will not be called because $x is false
$y = true || foo(); // foo() will not be called because $y is true
?>
4. حساسیت به حروف کوچک
true
و false
به حروف بزرگ و کوچک حساس هستند، بنابراین True
، FALSE
، و fAlSe
معتبر هستند اما برای ثبات توصیه نمی شوند.