%45 تخفیف، با کد daneshjoo روی تمام آموزش ها، بمناسبت روز دانشجو
زمان باقی مانده
سبد (0)

تبلیغات

انواع داده ها در PHP

رشته ها، اعداد صحیح، اعداد با ممیز شناور، بولین، آرایه ها، اشیاء، تهی (NULL)


رشته ها در PHP

Wiki

رشته، یک توالی از کاراکترهاست، مانند "!Hello world"

هر متنی داخل کوتیشن، می تواند رشته باشد. می توانید از کوتیشن (') یا دابل کوتیشن (") استفاده کنید:

مثال (انواع داده ها در PHP)

<?php
$x = "Hello world!";
echo $x;
echo "<br>";
$x = 'Hello world!';
echo $x;
?>

خروجی کد بالا:

Hello world!
Hello world!

اعداد صحیح در PHP

Wiki

اعداد بدون ممیز، صحیح هستند.

قوانین اعداد صحیح:

  • یک عدد صحیح، حداقل باید یک رقم داشته باشد.
  • یک عدد صحیح، نمی تواند شامل کاما یا فاصله باشد.
  • یک عدد صحیح، نباید ممیز داشته باشد.
  • یک عدد صحیح، می تواند منفی یا مثبت باشد.
  • یک عدد صحیح، می تواند در سه فرمت مشخص شود: decimal (بر مبنای 10)، hexadecimal (بر مبنای 16 - با پیشوند 0x) و octal (بر مبنای 8 - با پیشوند 0)

در مثال زیر، فرمت های مختلف اعداد صحیح نشان داده شده است. با استفاده از تابع ()var_dump، می توانید مقدار و نوع متغیر را مشخص نمایید:

مثال (انواع داده ها در PHP)

<?php
$x = 5985;
var_dump($x);
echo "<br>";
$x = -345; // negative number
var_dump($x);
echo "<br>";
$x = 0x8C; // hexadecimal number
var_dump($x);
echo "<br>";
$x = 047; // octal number
var_dump($x);
?>

خروجی کد بالا:

int(5985)
int(-345)
int(140)
int(39)

اعداد با ممیز شناور در PHP

Wiki

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

در مثال زیر، اعداد اعشاری در فرمت های مختلف، نشان داده شده است. با استفاده از تابع ()var_dump، می توانید مقدار و نوع متغیر را مشخص نمایید:

مثال (انواع داده ها در PHP)

<?php
$x = 10.365;
var_dump($x);
echo "<br>";
$x = 2.4e3;
var_dump($x);
echo "<br>";
$x = 8E-5;
var_dump($x);
?>

خروجی کد بالا:

float(10.365)
float(2400)
float(8.0E-5)

داده های Boolean در PHP

Wiki

مقدار داده های Boolean می تواند TRUE یا FALSE باشد.

$x=true;
$y=false;

داده ی Boolean، معمولاً در تست مشروط استفاده می شود. در بیاموزهای بعدی درباره ی تست مشروط بیشتر خواهید آموخت.


آرایه ها در PHP

Wiki

آرایه ها انواع خاصی از متغیرها به حساب می آیند که می توانند چندین داده را در قالب یک نام ذخیره کنند.

در مثال زیر، ابتدا یک آرایه ایجاد شده و سپس با استفاده از تابع ()var_dump، مقدار و نوع هر سلول آرایه مشخص شده است:

مثال (انواع داده ها در PHP)

<?php
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
?>

خروجی کد بالا:

array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(6) "Toyota" }

درباره آرایه ها در بیاموزهای بعدی توضیحات بیشتری را خواهید دید.


اشیاء (object) در PHP

Wiki

یک شیء نوع داده ای است که هم داده ها و هم اطلاعات مربوط به نحوه پردازش آنها را ذخیره می کند.

یک شیء در PHP، باید بطور صریح اعلان شود.

ابتدا باید کلاس شیء اعلان شود، برای این کار، از کلمه کلیدی class استفاده نمایید. یک کلاس، ساختاری است که می تواند شامل چندین property و method باشد.

برای دسترسی به property و methodهای یک کلاس، باید از آن کلاس یک نمونه بسازید:

مثال (انواع داده ها در PHP)

<?php
class My_class
{
  public $name="Amir";
  function SayHello()
  {
   print "Hello My Name is $this->name";
  }
}

$obj=new My_Class();
$obj->SayHello();
?>

خروجی کد بالا:

Hello My Name is Amir

در بیاموزهای بعدی، درباره ی اشیاء بیشتر توضیح داده خواهد شد.


مقدار NULL در PHP

Wiki

با استفاده از مقدار NULL، می توان نشان داد که یک متغیر مقدار ندارد. NULL تنها مقدار ممکن از نوع داده NULL است.

مقدار NULL، خالی یا پر بودن یک متغیر را نشان می دهد. همچنین بهتر است بدانید که در پایگاه داده بین NULL و رشته خالی تفاوت وجود دارد.

می توان متغیرها را با تنظیم مقدار NULL خالی کرد:

مثال (انواع داده ها در PHP)

<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>

خروجی کد بالا:

NULL

برای مشاهده فیلم ها و آموزش های پروژه محور برنامه نویسی PHP کلیک کنید.

دیدگاه‌ها  

+1 # ام ار 1396-01-05 15:20
ضمن عرض سلام و خسته نباشی
آموزش انواع داده ها در PHP عالی بود.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # m1378 1395-06-28 16:09
با سلام.
سایت خیلی خوبی دارین.
ولی در مورد هر موضوع کم توضیح میدین.
مثلا من به عنوان یه نفر که تازه شروع کردم به یادگیری php هیچی از مبحث object که بالا گفتین نفهمیدم.
همچنین در مورد مثال هاتون هیچ توضیحی نمیدین که هر قسمت از کد چیکار میکنه؟

متشکرم...
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # صالح 1395-12-09 01:25
دلیل توضیح کم اینه که قصد این آموزش ، یاد دادن اشیا و بحث شی گرایی نیست.فقط یک مثال هست که بفهمین چه نوع داده هایی وجود داره. بحث های مربوط به شی گرایی بعدا به صورت کامل توضیح داده میشه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # شهربانو دوستی 1395-06-29 01:46
سلام ممنون از لطف شما
برای اشنایی با اشیا از لینک زیر استفاده کنید.
http://beyamooz.com/php/110-class/142-%DA%A9%D9%84%D8%A7%D8%B3%D9%87%D8%A7-%D8%AF%D8%B1-php
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # azadeh ahmadi 1394-08-04 15:25
چرا توی مثال پروتکت ،وقتی ما از کلاس گرند پا شی میسازیم ، خود شی این کلاس نمیتونه به متغیر پروتکتش دسترسی داشته باشه؟!
$outsiderWantst oKnowGrandpasNa me = new GrandPa;
اینجا ما از کلاس گرندپا شی ساختیم دیگه...چرا ارور میده ؟!
المان خارجی که نیست..
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+3 # مهرداد صلاحی 1394-08-04 16:32
کدها رو قرار بدید.
خارج از کلاس، ابجکت میتونه فقط به متد public دسترسی داشته باشه. متد private رو فقط باید داخل همون کلاس استفاده کرد. متد protected هم میتونه داخل کلاس فرزند استفاده بشه. ولی در خارج از کلاس برای دستیابی به خصوصیات باید public باشه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # cafeit 1394-07-12 23:20
سلام این قطعه کد دقیقا چه وظیفه ای داره و چه کاری انجام میده؟؟

$obj=new My_Class();
$obj->SayHello();
?>
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # مهرداد صلاحی 1394-07-15 13:08
با سلام.
در مفاهیم شیءگرایی کلاس حالت انتزاعی را ایجاد میکند، و اشیاء نمونه ی واقعی از آن را.


خط اول باعث ایجاد یک شیء از کلاس میشود. توسط اشیاء می توان به متد و خصوصیات کلاس تعریف شده دسترسی پیدا کرد.
خط دوم باعث صدا زدن متد SayHello از کلاس موردنظر میشود. این متد یک عبارت چاپ میکند.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # ستاره 1394-05-21 13:19
انواع داده ها در PHP رو خیلی کامل و جامع توضیح داده بودید ممنون.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # amirkain 1394-05-10 14:18
آموزش خوبی بود.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # webnoos.com 1394-02-22 17:39
از global چرا نمی شه استفاده کرد به جای public ؟؟
اصلا فرقش جی هست؟
در آموزش قبلی در قسمت متغیر های عمومی (global) در PHP چرا $y=10 رو با اینحال که public نذاشتین خطا نمی ده؟؟؟
گیج شدم
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+11 # امیر پهلوان صادق 1394-02-24 10:35
اگر پروژه ای که قصد نوشتن آنرا دارید، قرار است بصورت شیء گرا پیاده شود، هنگام نوشتن یک کلاس، محدوده ی دسترسی به متدها (function) و خصوصیت ها (property) به سه طریق می تواند باشد:
1-Public
2- Protected
3- Private


1- Public:
زمانی که شما یک متد (function) یا یک متغییر (property) را به صورت Public تعریف می کنید، دسترسی به آن متغییر یا متد Public بصورت زیر خواهد بود:
1- در کل کلاسی که متغییر یا متد در آن تعریف شده است.
2- در تمام کلاس هایی که از کلاس تعریف شده در بالا، ارث بری دارند.
3- هر المان خارج از کلاس، بدون هیچ محدودیتی به آنها دسترسی دارد.
در تصویر بالا، پسری که بصورت Public تعریف شده، حق رفتن به خارج از خانه، داخل حیاط و همچنین داخل خانه را دارد ...!
مثال:<?php

class GrandPa
{
public $name='Mark Henry'; // A public variable
}

class Daddy extends GrandPa // Inherited class
{
function displayGrandPaN ame()
{
return $this->name; // The public variable will be available to the inherited class
}

}

// Inherited class Daddy wants to know Grandpas Name
$daddy = new Daddy;
echo $daddy->displayGrandPaN ame(); // Prints 'Mark Henry'

// Public variables can also be accessed outside of the class!
$outsiderWantst oKnowGrandpasNa me = new GrandPa;
echo $outsiderWantst oKnowGrandpasNa me->name; // Prints 'Mark Henry'
?>


2- Private:

زمانی که شما یک متد (function) یا یک متغییر (property) را به صورت Private تعریف می کنید، دسترسی به آن متغییر یا متد Private بصورت زیر خواهد بود:

1- فقط در کلاسی که در آن متغیر یا متد Private تعریف شده، دسترسی وجود خواهد داشت.
مثال:
<?php
class GrandPa
{
private $name = 'Mark Henry';
}

class Daddy extends GrandPa
{
function displayGrandPaN ame()
{
return $this->name;
}

}

$daddy = new Daddy;
echo $daddy->displayGrandPaN ame(); // در خروجی با اخطار مواجه خواهید شد.

$outsiderWantst oKnowGrandpasNa me = new GrandPa;
echo $outsiderWantst oKnowGrandpasNa me->name; // در خروجی با یک خطا مواجه خواهید شد.
?>


3- Protected:

زمانی که شما یک متد (function) یا یک متغییر (property) را به صورت Protected تعریف می کنید، دسترسی به آن متغییر یا متد Protected بصورت زیر خواهد بود:
1- در کل کلاسی که متغییر یا متد در آن تعریف شده است.
2- در تمام کلاس هایی که از کلاس تعریف شده در بالا، ارث بری دارند.
3- هر المان خارج از کلاس، به هیچ عنوان به متغیر و متدهای Protected دسترسی ندارد.

مثال:
<?php
class GrandPa
{
protected $name = 'Mark Henry';
}

class Daddy extends GrandPa
{
function displayGrandPaN ame()
{
return $this->name;
}

}

$daddy = new Daddy;
echo $daddy->displayGrandPaN ame(); // Prints 'Mark Henry'

$outsiderWantst oKnowGrandpasNa me = new GrandPa;
echo $outsiderWantst oKnowGrandpasNa me->name; // در خروجی با خطا مواجه خواهید شد
?>

توجه:
در بالا متوجه شدیم که زمانی که پروژه مان بصورت شیء گرا پیاده شده، باید محدوده یا Scop متغیرها و متدهای کلاس را حتماً تعیین کنیم وگرنه با خطا مواجه می شویم، حالا ممکن است در پروژه تان، خارج از بحث شی گرایی بخواهید متغییری را بصورت عمومی تعریف کنید، یعنی بصورتی که در کل برنامه و تمام Functionها در دسترس باشد، بنابراین به سادگی یا آنرا در بدنه اصلی کد PHP تعریف می کنید و یا از متغیر GLOBALS$ در تابع مورد نظرتان استفاده کنید. با توجه به سوال کاربر گرامی مون، WEBNOOS در این حالت اگر محدوده را مشخص نکنیم، با خطایی مواجه نخواهیم شد.
برای کسب اطلاعات بیشتر در مورد متغیر GLOBALS$ در PHP به لینک زیر مراجعه کنید:
http://beyamooz.com/php/80-basic/55-%D9%85%D8%AA%D8%BA%DB%8C%DB%8C%D8%B1-post_$-%D8%AF%D8%B1-php
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # mahdi 1394-01-22 11:04
کد قسمت اشیا رو کپی کردم تو اجرا خط 4 رو ارور داد.
Parse error: syntax error, unexpected '$name' (T_VARIABLE), expecting function (T_FUNCTION) in C:\xampp\htdocs \New folder\new 0.php on line 4
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # امیر پهلوان صادق 1394-01-22 16:32
اگر Scope یا محدوده ی عمل متغیر name$ را مشخص نمایید، خطا برطرف خواهد شد:<?php
class My_class
{
publi c $name="Amir";
function SayHello()
{
print "Hello My Name is $this->name";
}
}

$obj=new My_Class();
$obj->SayHello();
?>
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # hamid123 1393-12-20 10:54
سلام!
this->name$
این علامت یعنی چی؟
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+6 # مظاهر نصوحی 1393-12-20 11:33
this$ در واقع اشاره به کلاس فعلی دارد. شی ء کلاس فعلی می باشد. هر کلاس یک سری خصوصیت دارند که برای دسترسی به آن ها از < - استفاده می کنیم. this->name$ به معنی برگرداندن مقدار خصوصیت (property) شیء کلاسی که در آن قرار دارید. یعنی به طور پیش فرض یک نمونه از هر کلاس وجود دارد و آن هم this می باشد. این شیء بدون new به طور پیش فرض ایجاد شده است.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن

آموزش صوتی PHP

بستن
مدرس:
سوال و جواب:

ابزاری که در پیش روی دارید یکی از ابزارهای بسیار کاربردی سایت بیاموز در زمینه آموزش است، این ابزار برای سهولت یادگیری شما کاربران محترم طراحی شده است.

فقط کافی است روی عنوان پاراگراف مورد نظرتان کلیک کنید تا پخش صدا آغاز شود ...!

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه پرداخت آنلاین - بانک اقتصاد نوین پرداخت آنلاین - بانک سامان
 
دوره های آموزشی راه اندازی کسب و کارهای اینترنتی
تبلیغات اینترنتی