اعداد (Numbers)
در PHP با «اعداد در PHP» زیاد کار می کنیم. عدد صحیح، اعشاری، و رشته عددی داریم. هرکدام کاربرد خودش را دارد. مثل نمره امتحان، قد شما، یا متنی که عدد دارد.
انواع عددی در PHP
سه نوع اصلی داریم: صحیح (Integer)، اعشاری (Float)، و رشته عددی (Number String). همچنین بی نهایت (Infinity) و NaN هم وجود دارد.
ساخت متغیر عددی و بررسی نوع
با انتساب مقدار، نوع ساخته می شود. سپس با var_dump() نوع را ببین.
$a = 5;
$b = 5.34;
$c = "25";
var_dump($a);
var_dump($b);
var_dump($c);
اعداد صحیح (Integer)
صحیح (Integer) عدد بدون اعشار است. با is_int() بررسی کن.
$x = 5985;
var_dump(is_int($x));
$x = 59.85;
var_dump(is_int($x));
نکته: در 64بیت بازه صحیح بسیار بزرگ است. خارج از بازه، به float تبدیل می شود.
اعداد اعشاری (Float)
اعشاری (Float) عدد با نقطه اعشار یا نمایی است. با is_float() بررسی کن.
$x = 10.365;
var_dump(is_float($x));
بی نهایت (Infinity)
وقتی مقدار از بازه float خارج شود، بی نهایت می شود. با is_infinite() بررسی کن.
$x = 1.9e411;
var_dump(is_infinite($x));
مقدار NaN
NaN یعنی «عدد نیست». در محاسبه نامعتبر رخ می دهد. با is_nan() بررسی کن.
$x = acos(8);
var_dump($x);
رشته های عددی (Numeric Strings)
اگر متن فقط عدد باشد، is_numeric() درست برمی گرداند. در غیر این صورت، نادرست.
$x = 5985;
var_dump(is_numeric($x));
$x = "5985";
var_dump(is_numeric($x));
$x = "59.85" + 100;
var_dump(is_numeric($x));
$x = "Hello";
var_dump(is_numeric($x));
نکته: از PHP 7.0، رشته هگز مثل 0xf4 عددی حساب نمی شود.
تبدیل به عدد صحیح (Casting)
گاهی باید نوع را عوض کنی. با (int) یا intval() تبدیل انجام بده.
// Cast float to int
$x = 23465.768;
$int_cast = (int)$x;
echo $int_cast;
echo "<br>";
// Cast string to int
$x = "23465.768";
$int_cast = (int)$x;
echo $int_cast;
گام های عملی
- یک متغیر عددی بساز.
- با
var_dump()نوع آن را چک کن. - در صورت نیاز، با
(int)یاintval()تبدیل کن.
جمع بندی سریع
- اعداد در PHP سه نوع اصلی دارند.
- نوع را با
var_dump()بررسی کن. - خارج از بازه، مقدار بی نهایت می شود.
- رشته فقط عدد، عددی محسوب می شود.
- تبدیل نوع با
(int)انجام می شود.
کاراکترهای اِسکیپ برای مدیریت رشته ها کنار اعداد در PHP کاربردی است.
اعداد در PHP و تبدیل انواع را اینجا ادامه بده.