فهرست محتوا
انواع داده در PHP را می توان به 8 نوع مختلف تقسیم کرد. همه داده ها از یک نوع نیستن! بعضی ها نوعشان عددی، بعضی رشته ای و …
هر متغیر بسته به نوع داده ای که در خودش ذخیره می کنه، تایپ (Type) یا نوعش تعریف میشه! برای مثال اگه یک متغیر عدد 3 رو در خودش ذخیره کنه پس نوع این متغیر صحیح یا integer خواهد بود.
به صورت کلی میشه گفت 3 دسته اصلی از Data Type یا نوع داده وجود داره:
- داده های نوع اسکالر یا از قبل تعریف شده Scalar Type (اسکالر یعنی قابل سنج با ترازو یا مقداری که در لحظه فقط یک مقدار رو در خودش ذخیره میکنه)
- داده های نوع ترکیبی یا تعریف شده توسط کاربر Compound Type (داده هایی که در لحظه چندین مقدار را در خودشون ذخیره میکنن)
- داده های نوع خاص یا Special
در ادامه به معرفی انواع داده در PHP خواهیم پرداخت.
انواع داده در PHP: داده های اسکالر
این نوع از داده ها در لحظه فقط یک مقدار قابل اندازه گیری و قابل سنجش رو درون خودشون ذخیره می کنن. در مجموع 4 نوع داده در PHP در این گروه قرار می گیرند:
- Boolean (بخونید بولیَن یا همون مقدار True و False)
- integer (بخونید اینتِجِر یا مقدار صحیح یعنی عدد صفر یا منفی یا مثبت بدون اعشار)
- float (بخونید فلوت یا شناور یا همون اعدادی که اعشاری هستن)
- string (بخونید اِستِرینگ یا رشته ای که مجموعه ای از تعدادی کاراکتر هستن)
انواع داده در PHP: داده های ترکیبی
این نوع داده ها میتونن در لحظه بیش از یک مقدار رو درون خودشون ذخیره کنن. در مجموع 2 نوع از داده های PHP این قابلیت رو دارند:
انواع داده در PHP: داده های نوع خاص
داده نوع خاص داده ای هست که در هیچ یک از انواع بالایی قرار نگیره! در مجموع 2 نوع داده خاص در PHP داریم:
در ادامه هر نوع داده رو با جزئیات بیشتری توضیح میدم.
نوع داده Boolean در PHP
داده های نوع بولین ساده ترین نوع داده در دنیای برنامه نویسی هستن. این نوع داده فقط میتونن دو مقدار متفاوت داشته باشن. یا True معادل با عدد 1 هستن یا False معادل با عدد صفر.
به این نوع داده دودویی هم گفته میشه. یعنی فقط دوتا مقدار میتونه داشته باشه. داده های دودویی در مبنای 2 هستن. میدونید در هر مبنایی ما فقط تا یک رقم قبل اون میتونیم رقم داشته باشیم.
یعنی برای مثال در مبنای 2 فقط رقم های 0 و 1 داریم
در مبنای 8 فقط اعداد صفر تا هفت داریم
در مبنای X فقط اعداد در مبنای صفر تا X-1
داریم.
از مقادیر بولین در مقایسه ها یا ساختارهای شرطی استفاده میشه. زمان هایی که بخوایم شرطی رو بررسی کنیم، یا این شرط درسته یا غلط. در منطق ریاضیات هر دو هر زمان ممکن نیست. اگر شرط درست بود، پس True و اگر غلط بود پس False.
بعدا با ساختارهای شرطی آشنا میشیم، فعلا یه نمونه مثال ببینیم:
<?php if (TRUE) echo "This condition is TRUE."; if (FALSE) echo "This condition is FALSE."; ?>
خروجی:
This condition is TRUE.
در این مثال از 2 ساختار شرطی if استفاده کردیم. گفتیم اگر درون پرانتز های if مقدار True بود چاپ کن This condition is TRUE و اگر False بود چاپ کن This condition is FALSE. نکته جالب اینه دستورات درون if تنها زمانی اجرا میشه که نتیجه درون پرانتز اون برابر با True باشه. پس جمله دوم هرگز چاپ نمیشه و جمله اول همیشه چاپ میشه!
نوع داده Integer در PHP
اعداد صحیح اعدادی هستن که جزء اعشاری ندارن! برای مثال اعداد 3
و 0
و -5
اعداد صحیح یا integer هستن. یعنی اعداد صفر یا مثبت یا منفی بدون اعشار!
قوانینی که باید در مورد یک داده نوع integer بدونید:
- یک داده صحیح میتونه مثبت یا منفی با صفر باشه
- عدد صحیح فقط باید دارای جزء عددی یا Decimal باشه و قسمت اعشاری نداره
- این عدد میتونه در هر مبنایی از جمله مبنای 10 یا Decimal، مبنای 8 یا Octal و مبنای 16 یا Hexadecimal باشه.
- اعداد صحیح نامحدود نیستن! یعنی دارای یک محدوده هستن! محدوده اعداد صحیح در PHP از عدد
-2,147,483,648
تا2,147,483,647
رو شامل میشه! به عبارتی بین منفی و مثبت 2 به نمای 31.
مثال:
<?php $dec = 34; $oct = 0243; $hexa = 0x45; echo "Decimal number: " .$dec. "</br>"; echo "Octal number: " .$oct. "</br>"; echo "HexaDecimal number: " .$hexa. "</br>"; ?>
خروجی:
Decimal number: 34
octal number: 163
HexaDecimal number: 69
نوع داده Float در PHP
Float یا فلوت یعنی شناور. در واقع به این نوع داده، داده عددی Floatin-point یا ممیز شناور گفته میشه! یعنی عددی که دارای دو جزء باشه! یک جزء عدد دسمال و جزء بعدی هم اعشار!
برخلاف داده نوع صحیح، این نوع داده تمامی اعداد (صحیح و اعشاری) رو پوشش میده، مثبت یا منفی فرقی نداره!
برای مثال:
<?php $f1 = 21.32; $f2 = 414.752; $sum = $f1 + $f2; echo "Addition of floating numbers: " .$sum; ?>
خروجی:
Addition of floating numbers: 436.072
نوع داده String در PHP
داده نوع رشته ای یا String نوعی داده غیرعددی که از کنار هم قرار گرفتن تعدادی کاراکتر تشکیل میشه! این کاراکترها می تونن هرچیزی شامل حروف یا اعداد یا کاراکترهای خاص مثل #,@,!,$,% و … باشن
مقادیر رشته ای باید حتما بین دوتا علامت سینگل کوتیشن single quotes یا دابل کوتیشین double quotes قرار بگیرن.
برای مثال:
<?php $company = "Doonaweb"; //both single and double quote statements will treat different echo "Hello $company"; echo "</br>"; echo 'Hello $company'; ?>
خروجی:
Hello Doonaweb
Hello $company
نوع داده Array در PHP
آرایه ها از نوع داده های ترکیبی یا Compound است. یعنی در لحظه میتونه بیش از یک مقدار رو در خودش ذخیره میکنه.
نکته مهم اینه که آرایه در لحظه میتونه چندین مقدار رو فقط از یک نوع درون خودش نگه داری کنه! برای مثال میتونه تعدادی عدد رو ذخیره کنه یا تعدادی رشته، اما هر دو همزمان ممکن نیست!
برای تعریف آرایه میتونید از کلید واژه array استفاده کنید:
<?php $brands = array ("Ebr", "Doonaweb", "Doonalearn"); var_dump($bikes); //the var_dump() function returns the datatype and values echo "</br>"; echo "Array Element1: $brands[0] </br>"; echo "Array Element2: $brands[1] </br>"; echo "Array Element3: $brands[2] </br>"; ?>
خروجی:
array(3) { [0]=> string(3) "Ebr" [1]=> string(8) "Doonaweb" [2]=> string(10) "Doonalearn" }
Array Element1: Royal Enfield
Array Element2: Yamaha
Array Element3: KTM
تابع var_dump()
نوع یک متغیر رو بر میگردونه! نوع متغیر ما array هست که 3 مقدار رشته ای رو درون خودش ذخیره می کنه!
برای نمایش هر المان کافیه ایندکس یا شاخص اون مقدار درون آرایه رو فراخونی کنی! PHP مثل خیلی از زبان های دیگه Zero Index هست! یعنی شاخص اولین المان صفر، شاخص دومی المان 1 و …
برای فراخونی کافیه نام آرایه رو به همراه شاخص مند نظرتون درون دوتا کروشه بنویسید: $brands[1]
نوع داده object در PHP
اشیاء نوعی از کلاس های تعریف شده توسط کاربر هستن! اشیاء میتونن هم مقادیر و هم توابع از انوع متخلف رو درون خودشون ذخیره کنن. پس هم میتونه در لحظه بیش از یک مقدار ذخیره کنه و هم از انواع مختلف رو ذخیره کنه!
بعدا در ادامه دوره به معرفی اشیاء خواهیم پرداخت. فعلا فقط به وجود این نوع داده توجه کنید نه نحوه تعریف آن!
<?php class brand { function model() { $model_name = "Doonaweb"; echo "My Brand: " .$model_name; } } $obj = new brand(); $obj -> model(); ?>
خروجی:
My Brand: Doonaweb
نوع داده Resource در PHP
در واقعیت نوع resource یک نوع داده واقعی نیست! درواقع از ریورس ها برای ذخیره فراخوانی های تابع یا ارجاع به منابع خارجی PHP استفاده میشه! برای مثال تماس با پایگاه داده یک نوع منبع است. این مبحث جزو مباحث پیشرفته PHP که بعدا در این مجموعه آموزش به اون خواهم پرداخت.
نوع داده NULL در PHP
نال یا NULL یک نوع داده ویژه است که فقط میتونه یک مقدار داشته باشه و اون هم NULL!
چی شد؟ NULL هم یک مقدار و هم یک نوع داده است. این مقدار حساس به حروف کوچیک و بزرگه و حتما باید به صورت کپیتال یا حروف بزرگ بنویسی!
وقتی متغیری رو تعریف کنی و بهش مقدار ندی، تا زمانی که مقداری درون اون ذخیره نشده باشه، به صورت پیش فرض NULL خواهد بود.
<?php $nl = NULL; echo $nl; //it will not give any output echo var_dump($n1); ?>
خروجی:
NULL
توجه: echo $nl
خروجی قابل مشاهده نداره! کلمه NULL در خروجی بخاطر دستور بعدی یعنی echo var_dump($n1)
هست که نمایانگر نوع متغیره!
خوب آموزش انواع داده در PHP همینجا تمام شد! آموزش قبلی رو از دست ندید: