از متغیرها برای ذخیره داده ها استفاده می شود
مثال:
<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>
 قوائد متغیرها :
  •  هر متغیر با علامت $  مشخص می شود و در ادامه ان نام متغیر بیان می شود
  •  نام هر متغیر باید با یک حرف یا خط زیر شروع شود
  •  نام هر متغیر می تواند شامل حروف ارقام و خط زیر باشد

A-z, 0-9, and _

  •  در نام متغیر نمی توان جای خالی بکار برد
  •  در php نام متغیرها به حروف کوچک و بزرگ حساس است یعنی $a و $A با هم فرق دارند
 نکته مهم : هم دستورات php و هم متغیرهای php به حروف بزرگ و کوچک حساس هستند
  •  php دارای هیچ دستور خاصی برای تعریف متغیر نمی باشد
  •  و بلافاصله بعد از اینکه در متغیر مقدار قرار دادید ان متغیر بوجود می اید
  •  مقادیر رشته ای داخا علامت کوتیشین قرار می گیرند
 در زبانهای برنامه نویسی قوی مثل vb ما نوع داده ای را که در هر متغیر ذخیره می شود مشخص می کنیم اما در php نوع داده ای که ما برای متغیرمان از قبل مشخص کنیم وجود ندارد و شما هر بار مطابق داده ای که درون متغیر قرار می دهید نوع ان را مشخص کرده اید
 مشخص نمودن دامنه کاربرد متغیر :
 در php به چهار روش می توان دامنه کاربرد متغیر را مشخص نمود :
 
  • local
  • global
  • static
  • parameter
متغیرهای  local:
 متغیری که درون یک تابع  مشخص شده است فقط برای ان تابع کاربرد دارد و محلی می شود
 مثال:
<?php
$x=5; // global scope

function myTest()
{
echo $x; // local scope
}

myTest();
?>
دستورا ت بالا هیچ خروجی ندارند زیرا هر x متعلق به دامنه کاربری خود است
توابع می توانند دارای متغیرهای محلی هم نام باشند مثلا همه انها دارای متغیری به نام x باشند
زیرا هر متغیر تنها توسط تابعی که در ان قرار دارد شناخته می شود
 بلافاصله بعد از اتمام کار تابع متغیرهای محلی دورن ان  از درون حافظه ram  حذف می شوند

متغیرهای Global

هر متغیری که خارج از تمام توابع تعریف شده باشد دارای دامنه کاربردی global خواهد بود
متغیرهای global  را می تواند در هر قسمت برنامه از جمله درون توابع بطور مشترک بکار برد
برای استفاده از متغیر global درون توابع از کلمه کلیدی global استفاده نمائید
مثال
<?php
$x=5; // global scope
$y=10; // global scope

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

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

php همچنین تمام متغیرهای global را در یک ارایه به نام global ذخیره می کند

$GLOBALS[index]

که index نام متغیر است

این ارایه از دورن هر تابعی در برنامه قابل دسترسی است و همچنین می توان از این ارایه برای تغییر مقدار متغیرهای gloal استفاده نمود

مثال بالا را می توان بصورت زیر نیز نوشت :

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

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

myTest();
echo $y;
?>

متغیرهای Static

زمانی که اجرای دستورات تابع تمام شد ،  تمام متغیرهای محلی درون ان از بین می روند در نتیجه مقادیر درون انها نیز از بین خواهند رفت
اما گاهی ما می خواهیم بعد از تمام شدن دستورات تابع ف متغیرهای مخلی ان تابع و مقادیر درون انها از بین نروند تا بار دیگر که ان تابع اجرا شد ، مقادیر قبلی درون انها محفوظ مانده باشند
برای این منظور وقتی برای اولین بار متغیری را مقدار می دهید عبارت static را قبل از نام ان متغیر بکار ببرید 
مثال
<?php

function myTest()
{
static $x=0;
echo $x;
$x++;
}

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

?>
طبق این مثال ، هرگاه تابع را فراخوانی می کنید ، ممتغیر محلی درون ان دارای اخرین مقداری است که در فراخوانی قبلی تابع به خود گرفته بوده است
اما فراموش نکنید که حتی این نوع متغیرها نیز برای تابع محلی هستند یعنی فقط برای ان تابع شناخته می شوند

متغیرهای Parameter

یک Parameter یک متغیر محلی است که مقدار ان در زمان فراخوانی تابع برای ان متغیر ارسال می شود . و کحل تعریف ان درون پرانتز جلوی تابع است 
مثال :
<?php

function myTest($x)
{
echo $x;
}

myTest(5);

?>
پارامتر همان نام متغیری است که در اعلان تابع درون پرانتز به رنگ قرمز نشان داده شده است