HOME C C++ PYTHON JAVA HTML CSS JAVASCRIPT BOOTSTRAP JQUERY REACT PHP SQL AJAX JSON DATA SCIENCE AI

PHP Callback Functions

A callback function (often referred to as just "callback") is a function which is passed as an argument into another function.


Any existing function can be used as a callback function. To use a function as a callback function, pass a string containing the name of the function as the argument of another function:



Example

Pass a callback to PHP's array_map() function to calculate the length of every string in an array:

<!DOCTYPE html>
<html>
<body>

<?php
function my_callback($item) {
  return strlen($item);
}

$strings = ["apple", "orange", "banana", "coconut"];
$lengths = array_map("my_callback", $strings);
print_r($lengths);
?>

</body>
</html>

Output


Array
(
[0] => 5
[1] => 6
[2] => 6
[3] => 7
)

• Callbacks in User Defined Functions


User-defined functions and methods can also take callback functions as arguments. To use callback functions inside a user-defined function or method, call it by adding parentheses to the variable and pass arguments as with normal functions:


Example

Run a callback from a user-defined function:

<!DOCTYPE html>
<html>
<body>

<?php
function exclaim($str) {
  return $str . "! ";
}

function ask($str) {
  return $str . "? ";
}

function printFormatted($str, $format) {
  // Calling the $format callback function
  echo $format($str);
}

// Pass "exclaim" and "ask" as callback functions to printFormatted()
printFormatted("Hello world", "exclaim");
printFormatted("Hello world", "ask");
?>

</body>
</html>

Output

Hello world! Hello world?