Outbook
HTML+CSS+JS, Accesibilidad, PHP y más
Inicio
Desarrollo web
PHP
PHP: ereg y eregi obsoletos (deprecated) en PHP 5.3.x
PHP: ereg y eregi obsoletos (deprecated) en PHP 5.3.x
Las funciones PHP ereg y eregi se utilizan para realizar búsquedas en cadenas de texto mediante expresiones regulares:
ereg($patron, $cadena_texto);
eregi($patron, $cadena_texto);
Con PHP 5.3 se consideran obsoletas y provocan errores, aunque en Devthought dan una solución: cambiarlas por preg_match.
Los ejemplos anteriores con preg_match:
preg_match('/'.$patron.'/', $cadena_texto);
Las diferencias son escasas:
- Se cambia la función.
- La expresión regular ahora va entre barras inclinadas a la derecha "/[expresión regular]/"
Datos del artículo:
- Publicado el Sábado 12 de junio de 2010 a las 23:16
- Archivado en Desarrollo web, PHP
- Etiquetas: Desarrollo web, ereg, eregi, Expresiones regulares, PHP, preg_match
- Seguimiento de comentarios (RSS 2.0).
Comentarios del artículo
Puedes comentar o hacer trackback desde tu propio sitio web.
Si el comentario no guarda relación con el tema del artículo o los comentarios previos, si la redacción del mismo es ilegible (estilo HOYGAN), o si contiene insultos u otros términos ofensivos, será borrado de inmediato. No se garantiza ningún soporte a los ejemplos de desarrollo web presentados en este sitio.
Hay 9 comentarios a “PHP: ereg y eregi obsoletos (deprecated) en PHP 5.3.x”
ljllkjlk sadfalskdds dice:
Fecha de comentario: 2010/10/29 21:05
quiesiera saber que pasara con todos los que usamos ereg tendriamos que cambiar nuestras lineas de codigo nOOOOOOOO
William dice:
Fecha de comentario: 2011/01/11 22:31
Excelente informacion, lo tendre en cuenta cuando desarrolle.
JP dice:
Fecha de comentario: 2011/02/09 16:51
Excelente, aunque estoy teniendo problemas para convertir el código desde eregi, a preg_match.
Aunque, por algo será. Quizás generaba errores a largo plazo bajo determinados casos
Jacuer dice:
Fecha de comentario: 2011/09/24 01:47
preg_match() devuelve el número de veces que patron coincide. Este número será 0 (no existe coincidencia) o 1, ya que preg_match() detendrá la búsqueda después de la primera coincidencia.
Eventualmente en versiones anteriores a PHP 5.3.5 aparecera un mensaje indicandonos que la funcion ereg() esta obseleta,
He migrado a la funcion preg_match() y la he utilizado para restar fechas con formato AA:MM:DD
de la siguiente forma:
function restaFechas($dFecIni, $dFecFin)
{
$dFecIni = str_replace(“-”,”",$dFecIni);
$dFecFin = str_replace(“-”,”",$dFecFin);
//ereg( “([0-9]{4})([0-9]{1,2})([0-9]{1,2})”, $dFecIni, $aFecIni);
preg_match(“/([0-9]{4})([0-9]{1,2})([0-9]{1,2})/i”, $dFecIni, $aFecIni);
preg_match(“/([0-9]{4})([0-9]{1,2})([0-9]{1,2})/i”, $dFecFin, $aFecFin);
//ereg( “([0-9]{4})([0-9]{1,2})([0-9]{1,2})”, $dFecFin, $aFecFin);
$date1 = mktime(0,0,0,$aFecIni[2], $aFecIni[3], $aFecIni[1]);
$date2 = mktime(0,0,0,$aFecFin[2], $aFecFin[3], $aFecFin[1]);
return round(($date2 – $date1) / (60 * 60 * 24));
}
isra dice:
Fecha de comentario: 2011/10/11 16:51
Yeaaaaaaaaaaa fue una solucion rapidisima muchas gracias
Fancisco Villavicencio dice:
Fecha de comentario: 2011/12/09 17:28
No estoy muy de acuerdo con los comentarios anteriores.
Si se crean nuevas funciones, las anteriores deben seguir substiendo por el sencillo motivo de que hay un mundo de aplicaciones que están trabajando bien. En este momento por ejemplo, estoy utilizando la librería de clases class.XHTTPRequest que utiliza las funciones ereg() y ereg_replace(). Cómo voy a atreverme a cambiar el código de esa librería. CÓmo sé en qué aplicaciones se están utilizando? No es tan difícil vislumbrar las tremendas implicaciones que se siguen luego de que a alguien se le ocurrió decir ” FUNCTION DEPRECATED’.
Francisco.
ariel dice:
Fecha de comentario: 2013/01/18 02:06
hola gracias por el aporte, pero no funciona de forma correcta, tira un error
Parse error: syntax error, unexpected ‘:’ in /www/tipsnet.com.ar/htdocs/URL1.php on line 4











Miguel dice:
Fecha de comentario: 2010/06/30 12:28
Cada vez mudan mas funciones a sus variantes con expresiones regulares. Split, ereg…
A ver si te animas y nos explicas un poco esto de las expresiones regulares que algunos no acabamos de entenderlo.
Felicidades por el blog!