PHP Uncaught Error: Call to undefined function ereg , eregi, ereg_replace, eregi_replace, split, spliti

Si tienes algún desarrollo legado con versiones antiguas de php es muy probable que te hayas encontrado con estos errores al actualizar a una version reciente de php. Aunque no es la mejor opción (ya que lo que se debería de hacer es revisar el código y cambiar esas funciones por sus equivalentes), a continuación os dejo un fragmento php como workarround para que podáis disponer de las mismas funciones en entornos nuevos de php:

if (!function_exists('ereg')) {
    function ereg($pattern, $subject, &$matches) {
        return preg_match('/' . $pattern . '/', $subject, $matches);
    }
}
if (!function_exists('eregi')) {
    function eregi($pattern, $subject, &$matches) {
        return preg_match('/' . $pattern . '/i', $subject, $matches);
    }
}
if (!function_exists('ereg_replace')) {
    function ereg_replace($pattern, $replacement, $string) {
        return preg_replace('/' . $pattern . '/', $replacement, $string);
    }
}
if (!function_exists('eregi_replace')) {
    function eregi_replace($pattern, $replacement, $string) {
        return preg_replace('/' . $pattern . '/i', $replacement, $string);
    }
}
if (!function_exists('split')) {
    function split($pattern, $subject, $limit) {
        return preg_split('/' . $pattern . '/', $subject, $limit);
    }
}
if (!function_exists('spliti')) {
    function spliti($pattern, $subject, $limit) {
        return preg_split('/' . $pattern . '/i', $subject, $limit);
    }
}

Publicado

en

por

Etiquetas: