نماد سایت تیک۴

ساختار دستوری PHP

ساختار دستوری PHP

بیشتر صفحات وب به صورت دو تگ اصولا نوشته می شوند، یک دستورات HTML و دو دستورات PHP. امروز از سری مقالات تیک4 قصد داریم شما را بیشتر با ساختار دستوری PHP آشنا کنیم. باما همراه باشید.

تابع در PHP :

همانند سایر زبان های برنامه نویسی در PHP نیز ، توابع یکی از مهمترین ابزارها برای طراحی برنامه ها هستند . PHP دارای بیش از ۷۰۰ تابع درون ساخته است که امکان انجام بسیاری از کارها را را راحتی در اختیار برنامه نویسان قرار می دهد .
برای دریافت اطلاعات درباره توابع درون ساخته در زبان PHP ، به بخش آموزش مرجع توابع درون ساخته PHP بروید .

تابع چیست و چه کاربری دارد؟

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

تعریف تابع در زبان PHP :

شکل کلی تعریف تابع در زبان PHP به صورت زیر است :
تعریف تابع در ۷ با کلمه کلیدی function آغاز شده و سپس نام آن قرار می گیرد . نام تابع باید منحصر به فرد و غیر تکراری باشد . از قوانین زیر در نام گذاری توابع در ۷ استفاده می شود :

نام یک تابع حتما بایستی با یک حرف یا علامت _ شروع شود . برای مثال نام های MyFunction یا MyFunction_ صحیح و نام ۱function غلط می باشد .
نام توابع فقط می تواند شامل حروف ، اعداد و یا علامت _ باشد . برای مثال نام My_Function صحیح و نامی مثل My%Function غلط است .
نام یک تابع نمی تواند شامل فاصله باشد . اگر نام تابع بیش از یک کلمه است ، باید با علامت _ آن را از هم جدا کرده و یا با بزرگ و کوچک نوشتن حروف ، کلمات را از هم تمایز دهید . برای مثال My_Function یا MyFunction . توجه داشته باشید مثلا نام My Functionغلط است .
نام توابع نمی تواند معادل کلمات کلیدی در زبان ۷ باشد . برای مثال نام یک تابع نمی تواند print باشد .
پس از نام تابع پرانتز باز و بسته قرار می دهیم . همچنین دستورات تابع بین دو { و } قرار می گیرد . هر کدی که بین این دوعلامت باشد ، جزء تابع خواهد بود .


 <?php
function نام تابع ( ) 
{ 
... 
دستورات تابع 
.... 
} 
?>

مثال :

<?php 
function My_Function ( ) 
{ 
... 
echo " PHP Toturail " ; 
.... 
} 
?>

 

فراخوانی تابع در PHP :

در بخش قبل گفتیم که دستورات یک تابع تا زمانی که فراخوانی نشود ، اجرا نخواهد شد . برای اجرای دستورات یک تابع ، باید آن را فراخوانی کرد .
در هر جای برنامه و هر چند بار که نیاز داشته باشید ، می توانید یک تابع را فراخوانی نمایید . برای فراخوانی یک تابع نام آن را نوشته و پس از آن دو پرانتز باز و بسته به همراه یک عبارت سمیکلون ; قرار می دهیم . با ادامه مطلب ساختار دستوری PHP همراه ما باشید.
شکل کلی فراخوانی یک تابع به صورت زیر است :


<?php
نام تابع ( ) ;
?>

مثال :

<?php 
My_Function ( ) ; 
?>

 

مثال : در مثال زیر ابتدا یک تابع را تعریف کرده و سپس در نقطه ای دیگر از صفحه آن را فراخوانی نموده ایم . برای مشاهده خروجی بر روی خروجی مثال کلیک نمایید :

< html > 
< head >
 </head> 
<body>
 <?php function Show_Msg ( ) تعریف تابع { echo " You are learning PHP " ; } ?>
 < p > This is a HTML Paragraph < /p >
 <?php Show_Msg ( ) ; فراخوانی تابع ?> 
</body>
 </html>

 

ارسال پارامتر ( Parameter ) به تابع :

در بخش قبل با نحوه تعریف و استفاده از توابع در PHP آشنا شدید . در این بخش می خواهیم نحوه ارسال پارامترهای لازم به تابع را توضیح دهیم .

پارامتر چیست و چه کاربردی دارد :

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

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

پارامترهای مورد نظر خود را به ترتیب در پرانتز مقابل نام تابع به ترتیب تعریف کرده و چنانچه بیش از یکی هستند ، آنها را با علامت کاما ( , ) از هم جدا می کنیم . در PHP لزومی به تعیین نوع داده ای پارامترها نیست .
پس از تعریف پارامترهای لازم برای تابع خود ، در هنگام فراخوانی تابع ، مقادیر مورد نظر برای هر پارامتر را به همان ترتیبی که آنها را تعریف کرده ایم ، در پرانتز مقابل نام تابع قرار می دهیم . با ادامه مطلب ساختار دستوری PHP همراه ما باشید.
شکل کلی تعریف پارامترها در PHP به صورت زیر است :

<?php function نام تابع ( Parameter 1 , Parameter 2 , ... ) { ... دستورات تابع .... } ?>

 

مثال:

<?php function My_Function ( $txt_Name , $txt_Family ) { ... echo ( $txt_Name , $txt_Family ) ; .... } ?>

 

ارسال مقادیر پارامترها به تابع :

در بخش بالا نحوه تعریف پارمترها برای تابع را نشان دادیم . پس از تعریف پارامترهای مورد نظر ، باید مقادیر لازم را به تابع ارسال کرد .
برای این منظور در هنگام فراخوانی تابع ، مقادیر پارامترها را به همان ترتیب که تعریف کرده ایم ، در پرانتز مقابل نام آن قرار می دهیم . این کار را در مثال های زیر در عمل به شما نمایش داده ایم :

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

< html > 
< head >
 </head> 
<body>
 <?php function Show_Name ( $txt_Name , $txt_Family ) تعریف تابع و پارامترهای لازم { echo "My Name is : " . $txt_Name . " " . $txt_Family ; } ?> < p > This is a HTML Paragraph < /p > <?php Show_Name ( "Mehrdad" , "Fatahi" ) ; فراخوانی تابع و ارسال پارامترها ?>
 </body>
 </html>

 

ساختارهای شرطی if :

از ساختارهای شرطی در زبان php همانند سایر زبان های برنامه نویسی در زمانی استفاده میشود که بخواهیم در صورت برقرار بودن شرط یا شرط هایی یکسری دستورات خاص اجرا شده و در صورت عدم برقراری آنها گروه دیگری از دستورات اجرا شوند.
در زبان php ساختارهای شرطی زیر تعریف شده است.در این قسمت به توضیح مختصر هریک از آنها پرداخته و سپس در ادامه به توضیح کاملتر و ارایه مثال های عملی میپردازیم.

If statement : از این ساختار در زمانی استفاده میشود که بخواهیم در صورت برقرار بودن شرط یا شرط هایی دستورات خاصی اجرا شوند.
If … else statement : از این ساختار در زمانی استفاده میشود که بخواهیم در صورت برقرار بودن شرط یا شرط هایی یکسری دستورات اجرا شده و در صورت عدم برقراری آن شرط دستورات دیگری اجرا شوند.
If…else if…else statement : در این ساختار بیش از دو گروه شرط داریم.در هر قسمت شرطی که درست باشد دستورات مربوط به آن شرط اجرا میشود.

۱) If … statement :

از ساختار دستوری if در زمانی استفاده میشود که بخواهیم در صورت برقرار بودن شرط یا شرط هایی یکسری دستورات خاصی اجرا شوند.در صورت عدم برقراری شرط های تعیین شده این دستور هیچ کدی را اجرا نمیکند.
شکل کلی استفاده از این دستور به شرح زیر است :

if ( شرط یا شروط مورد نظر )
کدها و دستوراتی که می خواهید اجرا شوند ;

مثال :

<?php if ( $x == "1" ) echo "one"; ?>

 

مثال : در مثال زیر ابتدا مقدار نام روز جاری را در متغیر D$ ریخته ایم . سپس یک دستور شرطی if قرار داده ایم تا در صورتی که مقدار متغیر D$ برابر با Fri بود ، به کاربر ” آخر هفته خوش ” را بگوید :

<?php $d = date ( "D" ) ; if ( $d == " Fri " ) echo " Have a nice weekend! " ; ?>

 

ساختارهای حلقه ای while :

گاهی اوقات در کدنویسی خود نیاز داریم دستور یا دستوراتی خاص به تعداد دفعات لازم و یا تا زمانی که شرط تعیین شده برای آن صحیح است تکرار و اجرا شوند.به عباررت دیگر میخواهیم دستورات مورد نظرمان در یک حلقه تا زمانی که شرط تعیین شده برای آن درست است اجرا شوند.در این حالت از ساختارهای شرطی حلقه استفاده می کنیم.
در این ساختار یک شرط یا شروطی را در پرانتز مقابل عبارت while تعیین میکنیم.سپس کدهای مورد نطر خود را درون دستور while قرار میدهیم.تا زمانی که شرط تعیین شده درست باشد برنامه بصورت متناوب دستورات while را اجرا میکند.با ادامه مطلب ساختار دستوری PHP همراه ما باشید.
در php دو نوع حلقه while داریم :

while : این حلقه تا زمانی که شرط یا شروط تعیین شده در مقابل عبارت while درست باشد دستورات درون خود را بصورت متناوب اجرا میکند.
do …. whlie : این حلقه یکبار دستورات تعیین شده را برای آن اجرا میکند.سپس شرط یا شروط تعیین شده در انتهای حلقه ی while را بررسی کرده و تا زمانی که درست باشند دستورات حلقه را مجددا بصورت متناوب تکرار میکند.
نکته : در دستور while ممکن است به علت درست نبودن شرط تعیین شده هیچگاه دستورات آن اجرا نشوند.ولی در حلقه do … while حتی اگر شرط هم درست نباشد حداقل دستورات حلقه یکبار اجرا می شوند.

این حلقه تا زمانی که شرط یا شروط تعیین شده برای آن که در پرانتز مقابل کلمه while قرار دارند درست باشد دستورات خود را بصورت دوره ای تکرار میکند. با ادامه مطلب ساختار دستوری PHP همراه ما باشید.
شکل کلی استفاده از این حلقه بصورت زیر است:

while ( شرط یا شروط مورد نظر )
{
کدها و دستوراتی که می خواهید در حلقه تکرار شوند ;
}

مثال :

<?php
while ( $i =< 5 )
{
echo "The number is " . $i . "< br >";
$i++;
}
?>

نکته مهم : در دستور while و یا هر ساختار حلقه ای دیگر ، باید کدی وجود داشته باشد تا شمارنده حلقه را افزایش یا کاهش داده و یا باعث شود ، شرط حلقه بعد از مدتی نادرست شود . و گرنه حلقه تا بی نهایت ادامه پیدا کرده و کامپیوترتان هنگ می کند !! .

مثال : در مثال زیر یک حلقه ساده را تعریف کرده ایم . شمارنده این حلقه از یک شروع شده و به ازای هر عدد مقدار آن را چاپ می کند . سپس یک واحد شمارنده افزایش می یابد . این روند تا رسیدن شمارنده به عدد ۵ ادامه دارد :

<?php while ( $i <= 5 ) { $i = 1 ; echo " The number is " . $i . "< br/ >"; $i++ ; } ?>

 


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

do
{
کدها و دستوراتی که می خواهید در حلقه تکرار شوند ;
}
while ( شرط یا شروط مورد نظر ) ;

مثال:

<?php do { echo "The number is " . $i . "< br >"; $i++; } while ( $i =< 5 ) ; ?>

 

ساختارهای حلقه ای for و foreach :

۱ ) حلقه for : این حلقه دستورات خود را به تعداد دفعات تعیین شده برای آن و یا تا زمانی که شرط آن درست باشد تکرار و اجرا میکند.
برای مثال شما میخواهید دستور معینی به تعداد ۱۰ بار تکرار شود در این حالت باید دستور خود را در یک حلقه for قرار دهید .
شکل کلی تعریف و استفاده از این حلقه بصورت زیر است :

for ( init ; condition ; incresment )
{
کدها و دستوراتی که می خواهید در حلقه تکرار شوند ;
}

مثال :

<?php for ( $i = 1 ; $i <= 5 ; $i++ ) { echo "The number is " . $i . "< br/ >" } ?>

 

syntax توضیح هر یک از موارد
توضیح پارامتر
این پارامتر میتواند یک متغیر باشد که به عنوان اغازکر شمارنده حلقه تعیین شود. همچنین میتواند یک کد یا دستور باشد که یکبار در ابتدا حلقه اجرا خواهد شد. init
این پارامتر میتواند یک متغیر باشد که به عنوان اغازکر شمارنده حلقه تعیین شود. همچنین میتواند یک کد یا دستور باشد که یکبار در ابتدا حلقه اجرا خواهد شد. Init
تعیین کننده شرط یا شروط لازم برای ادامه کار حلقه است.تا زمانی که این شرط یا شروط درست باشند حلقه به کار خود ادامه داده و دستورات را تکرار میکند. Condition
این پارامتر میتواند یک دستور باشد که در هربار اجرای حلقه مقدار متغیر شمارنده حلقه را افزایش یا کاهش دهد.همچنین میتواند دستوری باشد که یکبار در انتهای کار حلقه اجرا شود .

مثال : در مثال زیر یک حلقه ساده را تعریف کرده ایم . شمارنده حلقه از ۱ شروع شده و به ازای هر عدد یکبار حلقه اجرا شده و مقدار عدد شمارنده یک واحد افزایش می یابد . روند اجرای حلقه تا زمانی که عدد شمارنده به ۵ برسد ادامه داشته و سپس متوقف می شود :


<?php for ( $i=1 ; $i <= 5 ; $i++ ) { echo "The number is " . $i . "<br>"; } ?>

 

حلقه foreach :


این حلقه برای حرکت درون آرایه ها و تکرار دستورات مورد نظر بر اساس اعضای آرایه استفاده میشود.
شکل کلی تعریف و استفاده از این حلقه بصورت زیر است :

foreach ( $array as $value )
{
کدها و دستوراتی که می خواهید به ازای هر عضو آرایه تکرار شوند ;
}

مثال :

<?php foreach ( $x as $value ) { echo &value . "< br/ >" ; } ?>

 

نحوه کار حلقه foreach :

 

به ازای هربار اجرای حلقه مقدار عنصرجاری آرایه به متغیر value داده شده و اندیس آرایه یک واحد به جلو حرکت میکند.این روند تا زمانی ادامه دارد که به انتهای آرایه برسیم.سپس اجرای حلقه متوقف میشود. در کد مثال ، array$ نام آرایه مورد نظر و value$ ، پارامتر دریافت مقدار عضو جاری آرایه است .

مثال : در مثال زیر یک آرایه ۳ عضوی به نام x$ تعریف کرده ایم . سپس آن را در یک حلقه foreach قرار داده و مقدار اعضای آرایه را به ترتیب در خروجی نمایش داده ایم :

<?php $x = array ("one","two","three") ; foreach ( $x as $value ) { echo $value . "< br >"; } ?>

 

ساختارهای دستوری switch :

 

از ساختار دستوری فوق در زمانی استفاده میشود که بخواهیم به ازای مقادیر مختلف یک متغیر خاص دستور یا دستورات خاصی اجرا شوند.
برای مثال فرض کنید که یک متغیر به نام number داریم.میخواهیم کدی طراحی کرده و متغیر number را در دستور switch آن قرار دهیم.سپس به ازای هریک از مقادیر مورد نظر برای متغیر number گروه خاص از دستورات اجرا شوند.مثلا برای مقدار ۱ خروجی one و برای مقدار ۲ خروجی twoو الی اخر باشد. در این حالت از ساختار دستوری switch استفاده میکنیم. با ادامه مطلب ساختار دستوری PHP همراه ما باشید.
شکل کلی استفاده از این ساختار switch به شکل زیر است :

switch ( متغیر مورد نظر )
{
case مقدار اول :
اگر مقدار متغیر با مقدار اول برابر بود این دستورات اجرا شوند ;
break ;
case مقدار دوم :
اگر مقدار متغیر با مقدار دوم برابر بود این دستورات اجرا شوند ;
break ;
default :
های تعیین شده برابر نبود ، این دستورات اجرا شوند case در صورتی که مقدر متغیر با مقدار هیچ کدام از ;
}

به کار بردن ساختار switch در عمل :

 

در مثال زیر به صورت عملی نحوه استفاده از دستور switch را نشان داده ایم .

مثال : در مثال زیر یک متغیر به نام x تعریف و مقدار دهی کر ده ایم . سپس آن را در یک دستور switch به کار برده ایم . این دستور مقدار متغیر را بررسی کرده و چنانچه مقدار آن ۱ باشد ، عبارت one را نشان داده ، برای مقدار ۲ عبارت two ، برای مقدار ۳ عبارت three و برای سایر مقادیر عبارت bigger than 3 را نمایش می دهد .

<?php $x = 1 ; switch ( $x ) { case 1 : echo " one "; break ; case 2 : echo " two " ; break ; case 3 : echo " three " ; break ; default : echo " bigger than three " ; } ?>

امیدواریم از مقاله ساختار دستوری PHP بهره کافی را برده باشید.

خروج از نسخه موبایل