سبد (0)

تبلیغات

متغیر ها در PHP

متغیر ها، ظرفی برای ذخیره اطلاعات هستند.

مثال (متغییر ها در PHP)

<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>

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

11

آیا جبر را از زمان مدرسه به یاد دارید؟

Wiki

x=5, y=6, z=x+y

آیا به یاد می آورید که یک حرف (مانند x) می تواند برای نگهداری یک مقدار (مثل 5) به کار رود و شما می توانید طبق اطلاعات بالا مقدار z را برابر 11 ارزیابی کنید.

این حروف، متغیر نامیده می شوند و آنها را می توان برای نگهداری مقادیر (x=5) و یا عبارات (z=x+y) استفاده کرد.

x=5
y=6
z=x+y

Note به متغیرها مانند ظرفی برای نگهدازی داده ها نگاه کنید.

متغییر ها در PHP

Wiki

  • متغییرها برای ذخیره ی مقادیر مانند رشته های متنی، اعداد، یا آرایه ها استفاده می شوند.
  • زمانی که یک متغییر را تعریف می کنید، می توانید آنرا در کدتان بارها و بارها استفاده کنید.
  • در PHP متغییر ها برخلاف C نوع خاصی ندارند، و از متغییرها بدون تعریف قبلی می توان استفاده نمود.
  • هر متغییر با علامت $ در ابتدای آن مشخص می شود.

روشی صحیح برای تعریف یک متغییر در PHP:

$var_name = value;

توجه: اغلب برنامه نویسان تازه کار در PHP فراموش می کنند که در ابتدای نام متغییر علامت $ را درج کنند، در این صورت برنامه کار نخواهد کرد.

مثال1: در زیر یک متغییر با محتویات رشته و یک متغییر دیگر با محتویات عدد تعریف شده است:

<?php
$txt="Hello World!";
$x=16;
?>


قواعد نامگذاری متغییر ها در PHP

Wiki

  • نام یک متغییر باید با یک حرف یا یک "_" آغاز شود.
  • نام یک متغییر می تواند شامل اعداد، حروف کوچک و بزرگ و "_"  باشد. (0-9,A-Z,a-z)
  • نام متغییر ها نباید شامل فضای خالی باشد.
  • نام متغیرها به حروف بزرگ و کوچک حساس است. (y$ و Y$ دو متغیر متفاوت اند)
Note بیاد داشته باشید که متغیرها در PHP به حروف کوچک و بزرگ حساس هستند.

ایجاد یا اعلان متغیرها در PHP

Wiki

در PHP دستوری برای ایجاد متغیرها وجود ندارد.

یک متغیر زمانی که مقداری را به آن اختصاص می دهید ایجاد می شود.

مثال (متغییر ها در PHP)

<?php
$txt="Hello world!";
$x=5;
$y=10.5;

echo $txt;
echo "<br>";
echo $x;
echo "<br>";
echo $y;
?>

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

Hello world!
5
10.5

بعد از اجرای مثال بالا، متغیر txd مقدار "!Hello world"، متغیر x مقدار "5" و متغیر y مقدار "10.5" را در خود نگهداری می کنند.

توجه: زمانی که می خواهید یک مقدار رشته ای را به یک متغیر اختصاص دهید از علامت ' استفاده نمایید.


PHP یک زبان بی ربط و بی قاعده (Loosely Type Language)

Wiki

در PHP یک متغییر نیازی به تعریف پیش از استفاده ندارد.

در مثال بالا، می بینید که مجبور نیستید به PHP بگویید که متغییر از چه نوع داده ای است، PHP به طور خودکار متغییر ها را به نوع داده ای مناسب شان تبدیل می کند که بستگی دارد چگونه مقدار دهی شده باشند.

در یک زبان برنامه نویسی قوی (مانند C یا Java) شما باید نوع و اسم متغییر را پیش از استفاده تعیین کنید. در PHP متغییر ها زمانی که شما از آنها استفاده می کنید به طور خود کار تعریف می شوند.


محدوده متغیرها در PHP

Wiki

در PHP، متغیرها در هرجایی از کد می توانند اعلان شوند.

منظور از محدوده، بخشی از اسکریبت است که متغیر می تواند در آن محدوده استفاده شود.

سه محدوده مختلف برای متغیرها وجود دارد:

  • local
  • global
  • static

متغیر های محلی (local) در PHP

Wiki

متغیرهایی که داخل یک تابع اعلان شده اند، تنها داخل همان تابع، قابل دسترسی اند. (متغیرهای با قلمرو محلی)

متغیرهای محلی به محض اینکه عملیات تابع تکمیل شد، حذف می شوند.

Note

شما می توانید در توابع مختلف، متغیرهای محلی با نام های یکسان داشته باشید. بخاطر اینکه متغیرهای محلی، تنها بوسیله تابعی که آنها را اعلان کرده است شناخته می شوند.

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


متغیر های عمومی (global) در PHP

Wiki

متغیرهایی که خارج از توابع اعلان شده اند، عمومی می شوند، و در تمام اسکریبت بجز توابع، به آنها دسترسی خواهد بود.

زمانی که یک صفحه وب را ببندید، متغیرهای عمومی حذف خواهند شد.

در مثال زیر، می توانید محدوده متغیرهای محلی و عمومی را مشاهده نمایید:

مثال (متغییر ها در PHP)

<?php
$x=5; // global scope

function myTest()
{
$y=10; // local scope
echo "<p>Test variables inside the function:<p>";
echo "Variable x is: $x";
echo "<br>";
echo "Variable y is: $y";
}

myTest();

echo "<p>Test variables outside the function:<p>";
echo "Variable x is: $x";
echo "<br>";
echo "Variable y is: $y";
?>

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

Test variables inside the function:
Variable x is:
Variable y is: 10

variables outside the function:
Variable x is: 5
Variable y is:

در مثال بالا، دو متغیر x$ و y$ و یک تابع ()myTest وجود دارد. متغیر x$، بخاطر اینکه خارج از تابع اعلان شده، عمومی است و متغیر y$، بخاطر اینکه داخل تابع اعلان شده، محلی است.

زمانی که داخل تابع ()myTest، مقادیر متغیرها را چاپ می کنیم، مقدار متغیر y$ بخاطر اینکه محلی است چاپ می شود، اما مقدار متغیر x$، چونکه خارج از تابع اعلان شده است نمی تواند چاپ شود.

سپس، زمانی که مقادیر متغیرها را خارج از تابع ()myTest چاپ می کنیم، مقدار متغیر x$ چاپ می شود، اما مقدار متغیر y$، چونکه داخل تابع ()mytest اعلان شده است نمی تواند چاپ شود.


کلمه کلیدی global در PHP

Wiki

با استفاده از کلمه کلیدی global، می توانید به متغیرهای عمومی در داخل یک تابع دسترسی داشته باشید.

برای انجام این کار، از کلمه کلیدی global، قبل از نام متغیر استفاده نمایید:

مثال (متغییر ها در PHP)

<?php
$x=5;
$y=10;

function myTest()
{
global $x,$y;
$y=$x+$y;
}

myTest();
echo $y; // outputs 15
?>

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

15

در PHP، با استفاده از آرایه GLOBALS$ نیز می توانید به متغیرهای عمومی دسترسی داشته باشید. در واقع تمام متغیرهای عمومی در این آرایه ذخیره می شوند و با استفاده از نام متغیر بعنوان ایندکس آرایه می توانید به متغیرها، دسترسی داشته باشید.

بازنویسی مثال بالا، با استفاده از آرایه GLOBALS$:

مثال (متغییر ها در PHP)

<?php
$x=5;
$y=10;

function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}

myTest();
echo $y; // outputs 15
?>

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

15

کلمه کلیدی static در PHP

Wiki

بطور معمول زمانی که اجرای یک تابع به پایان می رسد، تمام متغیرهای آن نیز حذف خواهند شد. اما بعضی مواقع نیاز می شود که یک متغیر محلی برای استفاده های بعدی حذف نشود.

برای انجام این کار، از کلمه کلیدی static در ابتدای اعلان متغیر، استفاده نمایید:

مثال (متغییر ها در PHP)

<?php

function myTest()
{
static $x=0;
echo $x;
echo "<br />";
$x++;
}

myTest();
myTest();
myTest();

?>

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

0
1
2

هر زمان که تابع صدا زده می شود، آخرین مقدار متغیر static، حفظ می شود.

توجه: در مثال بالا، متغیر x$ محلی است و فقط در داخل تابع به آن دسترسی وجود دارد.


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

دیدگاه‌ها  

+2 # ام ار 1396-01-05 15:23
ضمن عرض سلام و خسته نباشی
در صورت امکان توضیحی در مورد استفاده از $بدهید.و لطفا بفرمایید که در چه مواردی باید از این نشان استفاده کرد و اینکه وظیفه ی ان چیست؟
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+3 # امیر پهلوان صادق 1396-01-06 11:45
سلام، در زبان برنامه نویسی PHP برای تعریف و استفاده از متغیرها، باید در ابتدای نام متغیر از علامت $ استفاده نمایید.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # آرمان 1395-12-01 10:06
سلام و تشکر
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # مرتضی صفار 1395-04-25 14:11
عالی بود.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # خشایار مافی 1395-04-08 20:53
ممنون عالی بود.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # mar 1395-02-22 10:12
ممنون از آموزش های عالی تون.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+6 # mar 1395-02-22 10:02
سلام

تو این کد من یکم مشکل برخوردم.. وقتی تابع اول اجرا میشه صفر و بر میگردونه..و یک ذخیره میشه تو ایکس وقتی تابع دوم اجرا میشه دوباره بهش میگیم صفرو بزار تو ایکس و من میگم دو باره صفرو برمیگردونه نه یک..! میشه برام تو ضیح بدین
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # مصطفی نوری 1395-06-26 16:14
وقتی صفر رو نشون داد یکی بهش اضافه میشه و استوپ میشه(پس تا اینجا شده 1)
یه بار دیگه میگیم نشون بده , 1 رو نشون میده و یکی بهش اضافه میکنه(تا اینجا شده مقدار متغیر 2)
به بار دیگه... به همین ترتیب
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+8 # احسان عباسی 1395-02-22 10:30
سلام. توجه داشته باشید که وقتی یک متغیر استاتیک(static) رو در یک تابع تعریف کنیم، این متغیر تنها برای بار اول مقداردهی اولیه می شود و در دفعات بعدی دیگر مقدار دهی نمی شود( در تابع).
منبع: php.net/manual/en/language.variables.scope.php
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+3 # فرید 1395-01-11 19:34
ممنون از وبسایت خوبتون.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # پژمان 1394-12-02 02:37
ممنونم
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # امیرکیان 1394-11-28 20:29
آموزش های PHP عالی است، تشکر می کنم.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+3 # Reza Bahrami 1394-02-28 15:25
یعنی اگه از static قبل از متغیر محلی استفاده کنیم این متغیر رو بیرون از تابع هم میشه استفاده کرد ؟
میشه یکم بیشتر در موردش توضیح بدین
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+15 # امیر پهلوان صادق 1394-02-28 22:44
اگر درون تابعی متغیری را از نوع Static تعریف کنیم، تنها داخل همان تابع به متغیر مذکور دسترسی وجود خواهد داشت، و همان طور که در بالا توضیح داده شد، آخرین مقدار تنظیم شده برای متغیر از نوع Static حفظ خواهد شد و همیشه به آن دسترسی وجود خواهد داشت.
تصور فرمایید، کاربر شماره 1 وارد برنامه شده و باعث اضافه شدن یک واحد به متغیر Static شود، حالا اگر کاربر شماره 2 وارد برنامه شود، آخرین مقدار متغیر static را مشاهده خواهد کرد و می توند 1 واحد به آن اضافه کند...!
یک مثال واقعی برای متغیر Static، استفاده از آن برای نمایش آمار تعداد کاربران "میهمان" یا "اعضاء" است.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+5 # مهدی ربانی 1394-02-20 18:52
10Test را در خروجی مثال متغیر های عمومی (global) در PHP اصلاح کنید
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+6 # امیر پهلوان صادق 1394-02-24 09:48
بسیار ممنون، اصلاح شد.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+4 # rezax 1393-12-19 22:42
با سلام و عرض خسته نباشید فراوان
برای نوشتن کدهای php ادیتور حرفه ای وجود دارد ؟
که مثلا بتواند خطایابی کند و ایراد های کد را قبل اجرا نمایش دهد و یا دستورات را رزرو شده داشته باشد و ....

با تشکر
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+6 # مظاهر نصوحی 1393-12-20 08:09
IDE های مختلفی وجود دارد که به نظرم php Storm جزء IDE های خوب در زمینه ی php باشه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # آرمان 1395-12-01 09:52
سلام و عرض خداقوت. برنامه sublim text هم برای نوشتن کدهای php?
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن

آموزش صوتی PHP

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

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

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

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