ساخت توابع سفارشی php , همان توابع از پیش ساخته شده (built-in) php نیست . تابع یک بلاک از کد هایی است که میتوانید در هرجایی چندین بار استفاده کنید. توابع با بارگذاری صفحه , اجرا نمی شوند .بلکه بعد از فراخوانی آنها اجرا می شوند .می توانید از این توابع به کرار در جاهای مختلف کد خود استفاده کنیم.
ساختار تعریف توابع سفارشی php
تابع با کلمه کلیدی function
تعریف می شود . و بعد از آن اسم تابع را می نویسیم و بعد از آن پارانتز باز و بسته . درون این پارانتز ها می توانیم آرگومان ها (یا همان پارامتر ها) یی که قرارا است به این تابع پاس داده شود را می نویسیم .بعد از تعریف این موارد براکت را قرارا میدیم که بدنه اصلی کد های ما درون آن قرار دارد. برای فراخوانی تابع نیز کافیه که اسم تابع با پارانتز باز و بسته و یک ; استفاده کنیم.
سینتکس کلی تعریف و ساخت توابع سفارشی php به این صورت است :
1 2 3 4 5 |
<?php function MyMsg() { echo "Hello world!"; } ?> |
بعد از آن به این صورت تابع را صدا می زنیم.
1 2 3 4 5 6 |
<?php function MyMsg() { echo "Hello world!"; } MyMsg(); ?> |
توابع php با آرگومان
آرگومان ها می توانند داده هایی را به تابع php پاس بدند. یک آرگومان مثل یک متغییر است .آرگومان ها درست بعد از اسم تابع داخل پارانتز ها تعریف می شوند. و می توانند به دفعات زیاد استفاده شوند. جدا کننده این آرگومان ها کاما (,
) است
در این تابع ساده , از یک آرگومان ساده به اسم firstname و بعنوان آرگومان دوم نیز از lastname استفاده میکنم.
کد مثال تعریف توابع سفارشی php با دو آرگومان
من دو تا ورودی را به به آرگومان های این تابع پاس می دم. و خروجی به این صورت خواهد بود.
1 2 3 4 5 6 |
<?php function MyMsg($fname, $lname) { echo "Hello $fname $lname!"; } MyMsg("hassan", "shafiei"); //output will be "Hello hassan shafiei!" ?> |
توابع سفارشی با مقادیر پیش فرض آرگومان ها
به جای پاس دادن دو آرگومان به این تابع , می توانیم به یکی از این آرگومان ها مقدار پیش فرض اختصاص بدیم . می توانید این مقدار را با ورودی خودتان جایگزین کنید.
1 2 3 4 5 6 |
<?php function MyMsg($fname, $lname='shafiei') { echo "Hello $fname $lname!"; } MyMsg("hassan", "shafiei"); //output will be "Hello hassan shafiei!" ?> |
توابع سفارشی php با مقادیر بازگشتی
در حین استفاده از توابع php , ما نتیجه را به هیچ وجه به صورت مستقیم در صفحه چاپ نمی کنیم . ما نتیجه و مقدار را داخل یک متغییر ذخیره و برگشت (return
) می دهیم. در هنگام صدا زدن تابع , مقدار بازگشتی را به یک متغییر اختصاص و بعدا چاپ می کنیم.
1 2 3 4 5 6 7 8 |
<?php function MyMsg($fname, $lname='shafiei') { $val "Hello $fname $lname!"; return $val; } $op = MyMsg("hassan", "shafiei"); //output will be "Hello hassan shafiei!" echo $op; ?> |
اگر هرگونه مشکلی در استفاده از توابع داشتید , از طریق قسمت نظرات با ما در ارتباط باشید.
موفق و پیروز باشید.
خسته نباشید مرسی به خاطر این مطلب کاربردی
خوشحالم که مفید واقع شده . موفق باشید.