PHP Callback Functions
PHP Callback Functions
Callback functions trong PHP là các hàm được truyền như một tham số cho một hàm khác, để được gọi lại (call back) tại một thời điểm nào đó trong quá trình thực thi. Đây là một kỹ thuật cực kỳ hữu ích trong lập trình, đặc biệt là khi làm việc với các hàm mà hành vi của chúng cần phải thay đổi dựa vào bối cảnh hoặc tham số đầu vào.
Cách sử dụng Callback Functions
Để sử dụng callback functions, bạn cần định nghĩa một hàm và sau đó truyền tên hàm đó như một tham số cho hàm khác. Dưới đây là một ví dụ đơn giản:
function myCallbackFunction($value) { return $value * 2; } function applyCallback($arr, $callback) { foreach ($arr as $value) { echo $callback($value) . "\n"; } } $array = [1, 2, 3, 4, 5]; applyCallback($array, 'myCallbackFunction');
Trong ví dụ trên, hàm myCallbackFunction
sẽ được gọi lại cho từng phần tử của mảng $array
, và kết quả là mỗi giá trị trong mảng sẽ được nhân đôi.
Callback với Anonymous Functions
Bắt đầu từ PHP 5.3, bạn cũng có thể sử dụng anonymous functions (còn gọi là closure) làm callback. Dưới đây là ví dụ:
$callback = function($value) { return $value * 3; }; applyCallback($array, $callback);
Sử dụng Callback Functions trong Sort
Callback functions thường được sử dụng với các hàm sắp xếp. Bạn có thể sử dụng hàm usort
để sắp xếp mảng với một hàm callback cụ thể:
$numbers = [3, 2, 5, 1, 4]; usort($numbers, function($a, $b) { return $a - $b; // Sắp xếp theo thứ tự tăng dần }); print_r($numbers);
Kết luận
Callback functions là một công cụ mạnh mẽ trong PHP, giúp cải thiện tính linh hoạt và khả năng mở rộng của mã. Bằng cách sử dụng callbacks, bạn có thể dễ dàng tái sử dụng mã và phát triển những hàm phức tạp hơn mà không cần phải cứng nhắc trong từng phần của mã nguồn.
Hãy thực hành với callback functions và quan sát cách chúng có thể thay đổi cách bạn viết mã PHP!