میخوای وارد بازار کار بشی و محصولات خودت رو بفرشی همین الان ثبت نام کن
0

اعداد در php

با سلام خدمت دوستان عزیر و گرامی در این آموزش قصد داریم در مورد Integers ، Floats و Number Strings به طور کامل بپردازیم 

 


Numbers در PHP

نکته ای که باید در مورد PHP مورد توجه قرار گیرد این است که این امکان تبدیل خودکار نوع داده را فراهم می کند.

بنابراین ، اگر یک مقدار صحیح را به یک متغیر اختصاص دهید ، نوع آن متغیر به طور خودکار یک عدد صحیح خواهد بود. سپس ، اگر یک رشته را به همان متغیر اختصاص دهید ، نوع آن به یک رشته تغییر می کند.

این تبدیل خودکار گاهی اوقات می تواند کد شما را خراب کند.

 


Integers در PHP

عدد صحیح عددی است بدون هیچ قسمت اعشاری.

۲ ، ۲۵۶ ، -۲۵۶ ، ۱۰۳۵۸ ، -۱۷۹۵۶۷ همه عدد صحیح هستند. در حالی که ۷٫۵۶ ، ۱۰٫۰ ، ۱۵۰٫۶۷ شناور هستند.

بنابراین ، یک نوع داده صحیح یک عدد غیر اعشاری بین -۲۱۴۷۴۸۳۶۴۸ و ۲۱۴۷۴۸۳۶۴۷ است. مقداری بزرگتر (یا پایین تر) از این ، به عنوان float ذخیره می شود ، زیرا از حد یک عدد صحیح بیشتر است.

نکته مهم دیگری که باید بدانید این است که حتی اگر ۴ * ۲٫۵ = ۱۰ باشد ، نتیجه به صورت float ذخیره می شود ، زیرا یکی از عملوندها float است (۲٫۵).

در اینجا چند قانون برای اعداد صحیح آورده شده است:

  • یک عدد صحیح باید حداقل یک رقم داشته باشد
  • یک عدد صحیح نباید یک اعشار داشته باشد
  • یک عدد صحیح می تواند مثبت یا منفی باشد
  • عدد صحیح را می توان در سه قالب تعیین کرد: اعشاری (۱۰ پایه) ، هگزادسیمال (۱۶ پایه – پیشوند ۰x) یا هشت (۸ پایه – پیشوند ۰)

PHP برای بررسی اینکه نوع متغیر عدد صحیح نیست توابع زیر را دارد:

  • is_int ()
  • is_integer () – نوع دیگر  is_int ()
  • is_long () – نوع دیگر is_int ()

مثال

بررسی کنید آیا نوع متغیر عدد صحیح است یا خیر:

<?php
$x = ۵۹۸۵;
var_dump(is_int($x));

$x = ۵۹٫۸۵;
var_dump(is_int($x));
?>


float در PHP

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

۲٫۰ ، ۲۵۶٫۴ ، ۱۰٫۳۵۸ ، ۷٫۶۴E + 5 ، ۵٫۵۶E-5 همه اعشاری هستند.

نوع داده اعشاری معمولاً می تواند مقداری تا ۱٫۷۹۷۶۹۳۱۳۴۸۶۲۳E + 308 (وابسته به سیستم عامل) را ذخیره کند و حداکثر دقت آن ۱۴ رقم است.

PHP برای بررسی اینکه نوع متغیر اعشاری است توابع زیر را دارد:

  • is_float ()
  • is_double () – نوع دیگر is_float ()

مثال

نوع متغیر را float بررسی کنید:

<?php
$x = ۱۰٫۳۶۵;
var_dump(is_float($x));
?>

عدد بی نهایت (Infinity) در PHP

یک مقدار عددی بزرگتر از PHP_FLOAT_MAX بی نهایت در نظر گرفته می شود.

PHP برای بررسی محدود یا بی نهایت بودن مقدار عددی توابع زیر را دارد:

  • is_finite ()
  • is_infinite ()

با این حال ، تابع var_dump PHP () نوع و مقدار داده را برمی گرداند:

مثال

مقدار عددی محدود یا نامحدود را بررسی کنید:

<?php
$x = ۱٫۹e411;
var_dump($x);
?>

NaN در PHP

NaN مخفف کلمه Not a Number است.

NaN برای عملیات غیرممکن ریاضی استفاده می شود.

PHP برای بررسی اینکه یک مقدار عدد نیست توابع زیر را دارد:

  • is_nan ()

با این حال ، تابع var_dump () نوع و مقدار داده را برمی گرداند:

مثال

محاسبه نامعتبر مقدار NaN را برمی گرداند:

<?php
$x = acos(8);
var_dump($x);
?>

خروجی :

float(NAN)

رشته های عددی در PHP

از تابع is_numeric در php می توان برای یافتن عددی بودن یک متغیر استفاده کرد. اگر متغیر یک عدد یا یک رشته عددی باشد ، تابع true برمی گردد ، در غیر این صورت false است.

مثال

عددی بودن متغیر را بررسی کنید:

<?php
$x = ۵۹۸۵;
var_dump(is_numeric($x));

$x = “۵۹۸۵”;
var_dump(is_numeric($x));

$x = “۵۹٫۸۵” + ۱۰۰;
var_dump(is_numeric($x));

$x = “Hello”;
var_dump(is_numeric($x));
?>

توجه: از PHP 7.0: تابع is_numeric () برای رشته های عددی به صورت هگزادسیمال (مثلاً ۰xf4c3b00c) نادرست را برمی گرداند ، زیرا دیگر به عنوان رشته های عددی در نظر گرفته نمی شوند.


تبدیل رشته ها و اعشار به اعداد صحیح در PHP

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

از تابع (int) ، (عدد صحیح) یا intval () اغلب برای تبدیل یک مقدار به یک عدد صحیح استفاده می شود.

مثال

اعشار و رشته را به عدد صحیح تبدیل کنید:

<?php
// Cast float to int
$x = ۲۳۴۶۵٫۷۶۸;
$int_cast = (int)$x;
echo $int_cast;

echo “<br>”;

// Cast string to int
$x = “۲۳۴۶۵٫۷۶۸”;
$int_cast = (int)$x;
echo $int_cast;
?>

 

 

نظراتتون رو زیر همین پست با ما به اشتراک بگذارید.

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

×

سلام کاربر عزیز

هر سوالی دارید در این بخش هستیم تا شما رو راهنمائی کنیم

روی لوگومون کلیک کنید

× چطور میتونم کمکتون کنم؟