phpبرنامه نویسی

کامنت ها و متغیرها در زبان php چه کاربردی دارند؟

کامنت خطی در سورس کد ما است که به عنوان بخشی از کد های برنامه اجرا نمی شود و هدف آن بیشتر برای درک آسان تر کد منبع برای برنامه نویس های دیگر است و ...

کاربرد کامنت ها و متغیرها در php چگونه است؟

کامنت چیست؟

کامنت (comment) خطی در سورس کد ما است که به عنوان بخشی از کد های برنامه اجرا نمی شود و هدف آن بیشتر برای درک آسان تر کد منبع برای برنامه نویس های دیگر است و به طور کلی توسط کامپایلرها و مفسران نادیده گرفته می شوند. نحو نوشتاری کامنت ها در زبان های مختلف برنامه نویسی بسیار متفاوت است.و متغیر (variable) همانطور که از نامش پیداست یک مقداری است که می تواند تغییر کند ولی لزوما ثابت نیست.

دلایل استفاده از کامنت

  • به برنامه نویسان دیگر اجازه می دهد تا کد شما را بهتر درک کنند.
  • باعث می شود خودتان بفهمید که چه کدی را نوشته اید، بعضی از برنامه نویسان ممکن است بخواهند بعد از چند مدت به سورس برنامه خود بازگردند و لازم باشد تغییراتی را اعمال نمایند، پس کامنت می تواند کمک شایانی کند.

ایجاد کامنت در PHP

به دو صورت می توانیم از کامت استفاده کنیم.

  • کامنت کردن یک خط کد

با استفاده از // یا # می توان این کار را انجام داد. به مثال زیر توجه کنید:

<!DOCTYPE html>
<html>
<body>

<?php
// single comment

# single comment
?>

</body>
</html>
  • کامنت کردن بیش از یک خط

با استفاده از /* در ابتدا و */ در انتها می توانیم بیش از یک خط را کامنت کنیم. به مثال زیر توجه کنید:

<!DOCTYPE html>
<html>
<body>

<?php
// single line comment
/*
line 1
line 2
line 3
*/
?>

</body>
</html>

در مثال بالا ما line1 تا line3 را کامنت کردیم.

متغیرها در زبان برنامه نویسی php

یک متغیر مکانی (ظرفی) در حافظه است که برای ذخیره اطلاعات عددی و غیر عددی استفاده می شود.  در php متغییر را با $ (دلار) تعریف می کنیم. به مثال زیر توجه کنید.
<?php
$txt = "Hello world!";
$x = 5;
$y = 10.5;
?>

در مثال بالا متغیر $txt مقدار hello world را در خود ذخیره می کند. در متغییر $x مقدار عددی 5 وجود دارد و همینطور در متغییر $y نیز مقدار عددی 10.5 وجود دارد. توجه داشته باشید که مانند سایر زبان های برنامه نویسی برای قرار دادن متن یا رشته درون متغیر، باید آن را درون جفت کوتیشن (” “) قرار دهیم.

برای تعریف متغیر ناچار به رعایت قوانین زیر هستیم:
  • گذاشتن $ در ابتدای آن (متغیر می تواند کوتاه باشد مثل x و y،حتی می تواند بلند باشد مثل kaliboys).
  • متغیر حتما باید با یک حرف یا کاراکتری مثل _ شروع شود.
  • متغیر نمیتواند با عدد شروع شود. (برای مثال 5ali اشتباه است و باید ali5 تعریف کرد)
  • متغیر می تواند تنها کاراکتر هایی مثل (حروف A-z،اعداد 0-9 و _) را بپذیرد.
  •  نام متغییر ها case-sensitive هستند، یعنی به بزرگی و کوچکی حروف حساس اند.(برای مثال $Kaliboys با $kaliboys تفاوت دارد)

خروجی گرفتن در زبان برنامه نویسی php

در زبان php دستور echo اغلب برای نمایش یا چاپ خروجی در صفحه استفاده می شود. به مثال زیر توجه کنید:

<?php
$txt = "kaliboys.com";
echo "I love $txt!";
?>

در مثال بالا ما یک متغیر $txt تعریف کردیم و رشته kaliboys.com را در آن قرار دادیم، و سپس با دستور echo متن i love kaliboys.com را چاپ کردیم. خط سوم از کد بالا را می توان به این شکل زیر نیز نوشت که در هر دو صورت نتیجه یکی است.

echo "I love " . $txt . "!";

نکته : درواقع با قرار دادن . (نقطه) می توان در php متغیر را به رشته متصل کرد و به صورت یکپارچه چاپ کرد.حال شاید بخواهید بدانید که آیا می توان دو متغیر را نیز به هم پیوند داد؟ جواب بله است. به مثال زیر توجه کنید

<?php
$one = 12;
$two = 84;
echo $one + $two;
?>

در این مثال ما دو متغیر به نام $one و $two تعریف کردیم و با + به هم متصل کردیم. در نتیجه جواب ما حاصل جمع 12+84=96 می باشد. به همین سادگی!

گستره متغیرها در PHP

در php متغیر ها را میتوان بدون محدودیتی در هرجایی از کد خودمان تعریف و استفاده کنیم. اما گستره متغیر ها به این معنا است که بخشی از اسکریپت یا سورس کد ما است که می تواند استفاده شود و یا به آن رجوع کرد. پس php سه گستره متغیر مجزا دارد.

global (سراسری) : متغیر سراسری به متغیری گفته می‌شود که در تمامی ماژول‌ها و توابع برنامه‌نویسی مقدار خود را نگه دارد .(به کد زیر دقت کنید)

<!DOCTYPE html>
<html>
<body>

<?php
$name = "ali"; // global scope
 
function kaliboys() {
   // استفاده از متغیر name در داخل تابع باعث به وجود آمدن خطا می شود
    echo "<p>my name is: $name</p>";
} 
kaliboys();

echo "<p>my name is: $name</p>";
?>

</body>
</html>

متغیر global را میتوان به شکل زیر تعریف نمود.(به کد زیرتوجه کنید)

<?php
$a = 12;
$b = 15;

function Mykali() {
    global $a, $b;
    $b = $a + $b;
}

Mykali();
echo $b; // خروچی = 27
?>

خب در کد بالا،ما یک تابع تعریف کردیم به اسم mykali و دومتغیر به نام های a و b که متغیر سراسری هستند تعریف و مقداری را در آن قرار دادیم،پس از آن با صدا زدن تابع و دستور echo نتیجه را چاپ نمودیم.که جواب ما در اینجا 27 شد.

روش دیگر در تعریف متغیر سراسری

میتوان به شکل دیگر نیز این متغیر های سراسری را تغریف کرد که در واقع php تمام متغیر های سراسری را در ارایه ای به این شکل نگه داری می کند.

 $GLOBALS['index']

index نام متغیر را در خود نگه می دارد.پس مثال قبل را میتوان به شکل زیر بازنویسی کرد و در هردوصورت نتیجه مشابه است.

<?php
$a = 12;
$b = 15;

function Mykali() {
    $GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}

Mykali();
echo $b; // خروچی = 27
?>

local (محلی) : متغیرهایی که داخل یک تابع تعریف می شوند همگی محلی تلقی می‌شوند مگر آنکه مشخصاً ذکر شود که باید متغیر سراسری به کار گرفته شود که در اینصورت باید با پسوند global این کار را انجام داد.

<!DOCTYPE html>
<html>
<body>

<?php
function 
$name = "ali"; // متغیر سراسری
 
    echo "<p>my name is: $name</p>";
} 
kaliboys();
 // استفاده از متغیر name در خارج از تابع باعث به وجود آمدن خطا می شود
echo "<p>my name is: $name</p>";
?>

</body>
</html>

تذکر: ما می توانیم در هر تابع مجزا، چندین متغیر محلی ایجاد کنیم. بنابراین در توابع دیگر شناسایی نمی شوند و تنها در همان تابع مورد نظر استفاده می شود.

static (ایستا) : متغیری است که برای یک بار تمام طول برنامه تعریف می شود که باعث می شود تمامی نمونه های دیگر به آن دسترسی داشته باشند.

در حالت معمول وقتی یک تابع اجرا می شود،همه ی متغیر های ان تابع حذف می شوند!شاید درمواقعی ما نیاز داشته باشیم که متغیر local ما ثابت بماند تا برای استفاده های بعدی دردسترس ما باشد.برای این منظور از متغیر استاتیک (static) استفاده می کنیم.(به مثال زیر توجه کنید)

<!DOCTYPE html>
<html>
<body>

<?php
function Mykali() {
    static $a = 10;
    echo $a;
    $a++;
}

Mykali();
echo "<br>";
Mykali();
echo "<br>";
Mykali();
?> 

</body>
</html>

خب در کد بالا ما یک  تابع به اسم Mykali تعریف کردیم و در داخل آن یک متغیر استاتیک a تعریف کردیم و مقدار 10 را در آن قرار دادیم.خب حال اگر هرچند بار این تابع را فراخوانی کنیم مقدار ان چاپ شده و یکی به آن اضافه می شود.در نتیجه چون ما 3 بار این تابع را صدا زدیم پس جواب ما به صورت 10,11,12 خواهد بود.

منبع : w3schools و کتاب php-toturials

موفق باشید.

دیدگاهتان را بنویسید

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


دکمه بازگشت به بالا