Defining Functions
PHP functions support default parameters, type declarations (PHP 7+), return types, and arrow functions.
Example
<?php
// Basic function
function greet(string $name): string {
return "Hello, $name!";
}
echo greet("Alice"); // "Hello, Alice!"
// Default parameters
function createUser(string $name, string $role = "user"): array {
return ["name" => $name, "role" => $role];
}
// Nullable types
function findUser(int $id): ?array {
// Returns array or null
return null;
}
// Variadic function
function sum(int ...$numbers): int {
return array_sum($numbers);
}
echo sum(1, 2, 3, 4); // 10
// Arrow function (PHP 7.4+)
$double = fn($n) => $n * 2;
echo $double(5); // 10
// Anonymous function
$greet = function($name) {
return "Hi, $name!";
};
echo $greet("Bob");
?> 