انواع توابع در PHP
در PHP، توابع به دو دسته اصلی تقسیم میشوند: توابع داخلی (Built-in Functions) و توابع سفارشی یا کاربرساز (Custom Functions). توابع داخلی در هسته PHP تعبیه شدهاند و برای انجام عملیاتهای مختلف مورد استفاده قرار میگیرند. توابع سفارشی توسط کاربران ایجاد میشوند تا کارهای خاصی را انجام دهند.
فهرست مطالب:
- توابع بدون ورودی و خروجی
- توابع با پارامترهای ورودی
- توابع با مقدار بازگشتی
- توابع بازگشتی (Recursive Functions)
1. توابع داخلی در PHP
توابع داخلی PHP توابعی هستند که توسط PHP برای اجرای عملیاتهای مختلفی نظیر پردازش رشتهها، محاسبات ریاضی، کار با آرایهها، و مدیریت تاریخ و زمان طراحی شدهاند.
توابع رشتهای
توابع رشتهای برای کار با رشتهها به کار میروند و عملیاتهایی مانند تغییر اندازه، ترکیب، جستجو، و جایگزینی را انجام میدهند.
strlen()
: طول یک رشته را برمیگرداند.str_replace()
: یک بخش از رشته را جایگزین میکند.strpos()
: موقعیت اولین وقوع یک زیررشته را در رشته اصلی برمیگرداند.
مثال:
$string = "Hello, World!";
echo strlen($string); // خروجی: 13
echo str_replace("World", "PHP", $string); // خروجی: Hello, PHP!
توابع ریاضی
توابع ریاضی برای انجام محاسبات عددی به کار میروند و شامل توابعی برای محاسبات ساده و پیچیده هستند.
abs()
: مقدار مطلق عدد را برمیگرداند.pow()
: یک عدد را به توان عدد دیگری میرساند.sqrt()
: ریشه دوم یک عدد را محاسبه میکند.
مثال:
echo abs(-4); // خروجی: 4
echo pow(2, 3); // خروجی: 8
توابع آرایه
توابع آرایه برای مدیریت و پردازش آرایهها طراحی شدهاند و شامل توابعی برای مرتبسازی، افزودن، و حذف عناصر آرایه هستند.
array_push()
: یک یا چند عنصر به انتهای آرایه اضافه میکند.array_pop()
: آخرین عنصر آرایه را حذف میکند.sort()
: آرایه را به ترتیب صعودی مرتب میکند.
مثال:
$array = [3, 1, 2];
sort($array); // خروجی: [1, 2, 3]
توابع تاریخ و زمان
توابع تاریخ و زمان برای کار با تاریخ و زمان در PHP مورد استفاده قرار میگیرند و شامل توابعی برای دریافت زمان کنونی، فرمتبندی تاریخ و افزودن یا کاستن زمان هستند.
time()
: زمان کنونی را به صورت مهر زمانی برمیگرداند.date()
: تاریخ یا زمان را به فرمت مشخص برمیگرداند.mktime()
: یک مهر زمانی برای یک تاریخ و زمان خاص ایجاد میکند.
مثال:
echo date("Y-m-d H:i:s"); // خروجی: 2024-10-02 14:30:45
2. توابع سفارشی یا کاربرساز در PHP
توابع کاربرساز یا سفارشی به شما اجازه میدهند که توابع خاص خود را برای اجرای عملیاتهای سفارشی تعریف کنید. این توابع بسته به نیاز شما میتوانند ورودی و خروجی داشته باشند.
توابع بدون ورودی و خروجی
این نوع توابع نیازی به پارامترهای ورودی ندارند و مقداری را نیز به عنوان خروجی برنمیگردانند.
مثال:
function greet() {
echo "Hello, World!";
}
greet(); // خروجی: Hello, World!
توابع با پارامترهای ورودی
این توابع پارامترهایی را به عنوان ورودی دریافت میکنند و بر اساس ورودیها عمل میکنند.
مثال:
function greet($name) {
echo "Hello, $name!";
}
greet("Alice"); // خروجی: Hello, Alice!
توابع با مقدار بازگشتی
این توابع مقداری را به عنوان خروجی برمیگردانند.
مثال:
function add($a, $b) {
return $a + $b;
}
echo add(3, 5); // خروجی: 8
توابع بازگشتی (Recursive Functions)
توابع بازگشتی خودشان را صدا میزنند و معمولاً برای حل مسائل بازگشتی مانند محاسبه فاکتوریل استفاده میشوند.
مثال: محاسبه فاکتوریل
function factorial($n) {
if ($n <= 1) {
return 1;
} else {
return $n * factorial($n - 1);
}
}
echo factorial(5); // خروجی: 120
جمعبندی
در PHP، توابع داخلی برای اجرای عملیاتهای مختلف نظیر رشتهای، ریاضی، آرایه و تاریخ و زمان به کار میروند و بسیاری از نیازهای برنامهنویسی را پوشش میدهند. اما توابع سفارشی یا کاربرساز به شما امکان میدهند که توابع مختص به پروژه خود را بسازید و در جهت بهینهسازی کدها و سازماندهی بهتر از آنها بهره بگیرید.
از توابع بازگشتی برای حل مسائل پیچیده و توابع ناشناس برای وظایف موقتی و خاص، از دیگر ابزارهای قدرتمند در PHP است.