No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Match

16/25
Recursos

Aportes 9

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Con la incorporación de match en la versión 8 de PHP reduce mucho código, pero es mejor hacer uso de switch case porque me ha pasado que debo agregar nuevas funciones y me veo obligado a cambiar el match por un switch

Basicamente un switch() que si da ganas de usarlo, pero por temas de incopatibilidad me seguire quedando con mi amado elseif()

Muy interesante esta función, sinceramente también me causaba conflicto utilizar switch para solo dar una instrucción y ocupar muchas lineas de código, ahora con match, es mas simple y reducido.

parece un arreglo multi dimensional.

Que padre, yo usaba switch para quitar muchos if, pero me ha encantado match

Muy interesante esta estructura Match. Se incorporó a partir de la versión 8 de php.

https://www.php.net/manual/es/control-structures.match.php

Yo usaba arrays para casos asi pero creo que match es mejor.
Con match si podemos ejecutar funcionesfunction estructuraMatch($pais){    return match ($pais) {        "CO" => "Colombia",        "EEUU" => imprimirNumeros()    };} estructuraMatch("EEUU");estructuraMatch("CO");```js function imprimirNumeros() { for ($i = 0; $i < 10; $i++) { echo "$i\n"; } } function estructuraMatch($pais) { return match ($pais) { "CO" => "Colombia", "EEUU" => imprimirNumeros() }; } estructuraMatch("EEUU"); estructuraMatch("CO"); ```
<?php

/**
 * Obtiene el nombre completo del país según lo especificado por parámetro.
 *
 * NOTA: Se utiliza 'switch'que es compatible con todas las versiones de PHP.
 *
 * @param string $country Nombre corto del país.
 * @return string
 */
function get_country_name_switch($country) {

    $name = "";

    switch ($country) {
        case 'MX':
            $name = "México";
            break;

        case 'COL':
            $name = "Colombia";
            break;

        case 'EUA':
            $name = "Estados Unidos Americanos";
            break;

        default:
            $name = "Lo siento, no conozco ese país";
            break;
    }

    return $name;
}

// Imprimimos el resultado.
echo get_country_name_switch("MX") . PHP_EOL;

/**
 * Obtiene el nombre completo del país según lo especificado por parámetro.
 *
 * NOTA: Se utiliza 'match' el cuál se incorporó a partir de la versión 8 de php.
 *
 * @param string $country Nombre corto del país.
 * @return string
 */
function get_country_name_match($country) {

    return match($country) {
        "MX" => "México",
        "COL" => "Colombia",
        "EUA" => "Estados Unidos Americanos",
        default => "Lo siento, no conozco ese país"
    };

}

// Imprimimos el resultado.
echo get_country_name_match("LKASJDKLASDNLAS") . PHP_EOL;