Cómo utilizar callbacks en PHP

Foto Alejandro

March 22, 2023 Compartir

php

Descubre cómo utilizar los callbacks en PHP, una poderosa herramienta para crear funciones flexibles.

En PHP, un callback es simplemente una función que se pasa como argumento a otra función. Al utilizar callbacks, se pueden crear funciones más genéricas y flexibles que puedan ser utilizadas para diferentes propósitos.

Para usar callbacks en PHP, se puede hacer uso de la función call_user_func() o call_user_func_array(), que permiten llamar a una función pasando como argumento su nombre o una variable que la contenga.

Aquí hay un ejemplo práctico de cómo utilizar callbacks como argumentos de funciones en PHP:

function processData(array $data, callable $callback) {
    $result = array();

    foreach ($data as $item) {
        $result[] = call_user_func($callback, $item);
    }

    return $result;
}

function doubleData(mixed $item) {
    return $item * 2;
}

function tripleData(mixed $item) {
    return $item * 3;
}

$data = [1, 2, 3, 4, 5];

$resultDouble = processData($data, 'doubleData');
print_r($resultDouble);

$resultTriple = processData($data, 'tripleData');
print_r($resultTriple);

En este ejemplo, la función processData recibe un array de datos y un callback como argumentos. La función itera sobre los datos y llama al callback para procesar cada uno de ellos. Luego, guarda el resultado a un array y lo retorna al finalizar.

Los callbacks duplicar y triplicar simplemente multiplican el valor del dato por 2 y 3 respectivamente.

En el código de ejemplo, se llama a la función processData dos veces, una vez con el callback duplicar y otra vez con el callback triplicar. Esto devuelve dos arrays con los datos procesados de acuerdo con las funciones de callback.

Al ejecutar el código, se obtiene el siguiente resultado:

Array
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 8
    [4] => 10
)
Array
(
    [0] => 3
    [1] => 6
    [2] => 9
    [3] => 12
    [4] => 15
)

Los callbacks son una herramienta invaluable en PHP que permiten crear funciones altamente flexibles y reutilizables. Su uso es esencial para desarrollar aplicaciones escalables y mantener un código claro y conciso. Aunque puede llevar algo de tiempo acostumbrarse a su uso, los callbacks en PHP son una habilidad valiosa que todo desarrollador debería tener en su arsenal.

Espero que esta pequeña publicación te sea útil para comprender los conceptos fundamentales detrás de los callbacks y cómo aplicarlos de manera efectiva en tus proyectos.

Autor

Hola 👋, Soy Alejandro, un desarrollador de software que disfruta crear y mejorar herramientas que resuelvan problemas y hagan que la vida de las personas sea más sencilla, bella y cómoda. Algunas veces escribo sobre las cosas que he aprendido con el tiempo. Espero que el contenido te sea de ayuda.