در PHP، توابع کاربرساز یا Custom Functions به شما اجازه میدهند که توابعی را ایجاد کنید که قابلیت اجرای کدهای مورد نظر شما را دارند. این توابع معمولاً برای سازماندهی کد و استفاده مجدد از بخشهای تکراری برنامهنویسی به کار میروند.
انواع توابع کاربرساز:
- توابع بدون ورودی و خروجی
- توابع با پارامترهای ورودی
- توابع با مقدار بازگشتی
- توابع بازگشتی (Recursive Functions)
- توابع بینام یا ناشناس (Anonymous Functions)
1. توابع بدون ورودی و خروجی
این نوع تابع نیازی به ورودی ندارد و مقدار خاصی را نیز به عنوان خروجی برنمیگرداند. معمولاً برای اجرای کدی خاص استفاده میشود که نیازی به دادههای ورودی ندارد.
مثال:
function greet() {
echo "Hello, World!";
}
greet(); // خروجی: Hello, World!
2. توابع با پارامترهای ورودی
این توابع پارامترهایی را به عنوان ورودی دریافت میکنند. میتوانید تعداد و نوع پارامترها را به دلخواه تنظیم کنید تا تابع بر اساس ورودیهای دریافتی عمل کند.
مثال:
function greet($name) {
echo "Hello, $name!";
}
greet("Alice"); // خروجی: Hello, Alice!
3. توابع با مقدار بازگشتی در php
توابع با مقدار بازگشتی در php مقدار به عنوان خروجی برمیگردانند. معمولاً این نوع توابع برای پردازش دادهها و برگرداندن نتیجه استفاده میشوند.
مثال:
function add($a, $b) {
return $a + $b;
}
$result = add(3, 5); // $result برابر با 8
echo $result;
4. توابع بازگشتی (Recursive Functions) در php
توابع بازگشتی، خودشان را صدا میزنند و معمولاً برای حل مسائل بازگشتی مانند محاسبه فاکتوریل یا فیبوناچی استفاده میشوند.
مثال: محاسبه فاکتوریل در php
function factorial($n) {
if ($n <= 1) {
return 1;
} else {
return $n * factorial($n - 1);
}
}
echo factorial(5); // خروجی: 120
5. توابع بینام یا ناشناس (Anonymous Functions)
توابع ناشناس یا Anonymous Functions توابعی هستند که نام مشخصی ندارند و معمولاً به عنوان یک متغیر یا به عنوان ورودی به توابع دیگر استفاده میشوند. این توابع برای کاربردهای کوتاهمدت یا موقتی به کار میروند.
مثال:
$greet = function($name) {
return "Hello, $name!";
};
echo $greet("Bob"); // خروجی: Hello, Bob!
جمعبندی
توابع کاربرساز در PHP به برنامهنویسان کمک میکنند تا برنامههایی سازمانیافتهتر و قابل نگهداریتری بنویسند. با انواع مختلف توابع از جمله توابع بدون ورودی و خروجی، توابع با پارامترهای ورودی، توابع با مقدار بازگشتی، توابع بازگشتی و توابع ناشناس میتوان نیازهای مختلف برنامهنویسی را برطرف کرد.