函數聲明通常使用 function
關鍵字來定義,後接函數名稱和參數列表,以及大括號內的函數內容。
function sayHello($name) {
echo "Hello, $name!";
}
函數表達式是指將函數賦值給變量的方式來定義函數。
$add = function($a, $b) {
return $a + $b;
};
箭頭函數是 PHP 7.4 新增的簡短函數寫法,適用於只有單一表達式的情況。
$add = fn($a, $b) => $a + $b;
匿名函數是指不具名的函數,可以用作變量的值,或者作為其他函數的參數。
$greet = function($name) {
echo "Hello, $name!";
};
$greet("Alice"); // 輸出:Hello, Alice!
sayHello("Alice"); // 呼叫名為 sayHello 的函數
function sayHello($name) {
echo "Hello, $name!";
}
function add($a, $b) {
return $a + $b;
}
function sayHello($name = "World") {
echo "Hello, $name!";
}
function sum(...$numbers) {
$total = 0;
foreach ($numbers as $number) {
$total += $number;
}
return $total;
}
function add($a, $b) {
return $a + $b;
}
function createPerson($name, $age) {
return new Person($name, $age);
}
function getOperation($type) {
switch ($type) {
case 'add':
return function($a, $b) {
return $a + $b;
};
case 'subtract':
return function($a, $b) {
return $a - $b;
};
default:
return null;
}
}
$operation = getOperation('add');
echo $operation(5, 3); // 輸出:8