當前位置: 首頁> 最新文章列表> PHP函數參數詳解:可變參數與回調函數的使用方法

PHP函數參數詳解:可變參數與回調函數的使用方法

M66 2025-09-17

PHP函數中的特殊參數

在PHP 開發中,函數的參數設計非常靈活,其中兩個特殊參數尤為常見:可變數量參數...$var與回調函數callable 。它們分別用於處理不定數量的參數以及在函數中傳遞可執行的回調邏輯。

可變數量參數...$var

可變數量參數允許一個函數接收任意數量的參數,並將這些參數自動存儲為數組。這樣開發者無需預先定義具體參數個數,在處理類似累加、聚合時非常方便。

<?php
function sum(...$numbers) {
  $total = 0;
  foreach ($numbers as $number) {
    $total += $number;
  }
  return $total;
}

echo sum(1, 2, 3, 4, 5); // 輸出: 15
?>

在上面的示例中,函數sum使用了可變參數...$numbers ,可以一次性接收多個數字併計算總和。

回調函數callable

回調函數參數callable允許函數接收一個函數作為參數,並在需要時調用它。通常用於過濾、排序或自定義處理邏輯的場景。

<?php
function filterArray(array $array, callable $callback) {
  $filteredArray = [];
  foreach ($array as $element) {
    if ($callback($element)) {
      $filteredArray[] = $element;
    }
  }
  return $filteredArray;
}

$callback = function ($value) {
  return $value > 10;
};

$filteredArray = filterArray([1, 2, 10, 15, 20], $callback);
print_r($filteredArray); // 輸出: [15, 20]
?>

這裡的filterArray函數接收一個數組和一個回調函數,回調函數用於判斷數組元素是否滿足條件,從而實現靈活的過濾操作。

注意事項

  • 可變數量參數必須位於函數參數列表的最後。
  • 回調函數既可以是匿名函數,也可以是已定義的函數名稱。

通過合理使用這兩類參數,PHP 函數能夠更具擴展性和靈活性,為開發者提供更強的代碼復用能力。