elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  preg_match es lo mismo que ereg?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: preg_match es lo mismo que ereg?  (Leído 3,181 veces)
SrTrp


Desconectado Desconectado

Mensajes: 325


Script/C#


Ver Perfil
preg_match es lo mismo que ereg?
« en: 19 Diciembre 2017, 20:16 pm »

Quería saber eso si es lo mismo ereg que preg_match o si sirve para lo mismo o cual es la direfencia :/ porque ereg lo uso en mi hosting, y me acabo de percatar que en mi localhost(xampp) no sirve esa función de ereg.
Código
  1. if (ereg("[^A-Za-z0-9]+",$_POST['usss'])) {
  2.      $error12 = base64_encode("Esos caracteres no sirven");
  3. echo "<script>location.href='/index.php?ffx=$error12'</script>";
  4. }
  5.  
  6.  
  7. _________________________________________________________________
  8.  
  9. if (preg_match("[^A-Za-z0-9]+",$_POST['usss'])) {
  10.      $error12 = base64_encode("Esos caracteres no sirven");
  11. echo "<script>location.href='/index.php?fxx=$error12'</script>";
  12. }
  13.  
  14.  


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: preg_match es lo mismo que ereg?
« Respuesta #1 en: 20 Diciembre 2017, 01:50 am »

ereg es super viejo, fue marcado como obsoleto en 5.3, por allá hace como 4 años (o 5 años?)

estas funciones eran mucho más lentas y tenían problemas como que causaban overflows y otros detalles...  y si, ereg y preg son casi identicos, usualmente la mayor diferencia es que preg es más estricto con el regex


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



Ver Perfil WWW
Re: preg_match es lo mismo que ereg?
« Respuesta #2 en: 20 Diciembre 2017, 07:30 am »

ereg fue marcado como obsoleto en la versión 5.3 y fue eliminado de la versión >7.0. Su objetivo es el mismo (ejecutar sentencias regex) pero lo hacen de forma diferente.

De todos modos, si solo lo usas para validar, te recomiendo que uses la funcion nativa de PHP (filter_var) con su correspondiente filtro (FILTER_VALIDATE_REGEXP).

Código
  1. <?php
  2.  
  3. $validateUsss = array('options'=>array('regexp'=>'[^A-Za-z0-9]+'));
  4.  
  5. if(!filter_var($_POST['usss'], $validateUsss)){
  6.    header('Location: index.php?fxx='.base64_encode('Esos caracteres no sirven'));
  7. }
  8.  
  9. ?>

Hay algunos filtros que ya los incluye PHP por defecto, como correos, url o IP.
http://php.net/manual/es/filter.filters.validate.php

Saludos
« Última modificación: 20 Diciembre 2017, 07:38 am por #!drvy » En línea

SrTrp


Desconectado Desconectado

Mensajes: 325


Script/C#


Ver Perfil
Re: preg_match es lo mismo que ereg?
« Respuesta #3 en: 20 Diciembre 2017, 20:50 pm »

ereg es super viejo, fue marcado como obsoleto en 5.3, por allá hace como 4 años (o 5 años?)

estas funciones eran mucho más lentas y tenían problemas como que causaban overflows y otros detalles...  y si, ereg y preg son casi identicos, usualmente la mayor diferencia es que preg es más estricto con el regex
Gracias ya decia, pero porque no me vale con el preg solo aceptar numeros y letras me acepta todo signos y con ereg no me aceptaba signos.

ereg fue marcado como obsoleto en la versión 5.3 y fue eliminado de la versión >7.0. Su objetivo es el mismo (ejecutar sentencias regex) pero lo hacen de forma diferente.

De todos modos, si solo lo usas para validar, te recomiendo que uses la funcion nativa de PHP (filter_var) con su correspondiente filtro (FILTER_VALIDATE_REGEXP).

Código
  1. <?php
  2.  
  3. $validateUsss = array('options'=>array('regexp'=>'[^A-Za-z0-9]+'));
  4.  
  5. if(!filter_var($_POST['usss'], $validateUsss)){
  6.    header('Location: index.php?fxx='.base64_encode('Esos caracteres no sirven'));
  7. }
  8.  
  9. ?>

Hay algunos filtros que ya los incluye PHP por defecto, como correos, url o IP.
http://php.net/manual/es/filter.filters.validate.php

Saludos
Gracias por tu respuesta, intente usar la función que me reconmendaste ya que solo lo uso para validar pero no me funciono.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: preg_match es lo mismo que ereg?
« Respuesta #4 en: 21 Diciembre 2017, 02:01 am »

prueba tus regex con estas paginas

https://regexr.com/
https://regex101.com/

recuerda que preg es PCRE
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con EREG
PHP
mokoMonster 8 4,907 Último mensaje 28 Noviembre 2010, 20:48 pm
por ~ Yoya ~
Ayuda con preg_match()
PHP
xustyx 2 2,856 Último mensaje 10 Noviembre 2011, 15:39 pm
por xustyx
Problema con preg_match ¡¡¡¡
PHP
nuevo_1991 0 1,394 Último mensaje 27 Marzo 2013, 03:23 am
por nuevo_1991
Duda con preg_match e if
PHP
hello 3 2,097 Último mensaje 12 Septiembre 2016, 00:27 am
por engel lex
preg_match
PHP
Anonymatrix 4 3,103 Último mensaje 13 Marzo 2017, 00:39 am
por Anonymatrix
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines