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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  php no soporta regex complejo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: php no soporta regex complejo  (Leído 3,276 veces)
franfis

Desconectado Desconectado

Mensajes: 248



Ver Perfil
php no soporta regex complejo
« en: 28 Marzo 2014, 01:12 am »

Hola amigos. Ciertamente no es un regex tan complejo pero cada vez que lo ejecuto en el  wampserver aparece el famoso mensaje Esta página web no está disponible, el archivo oui.txt lo obtengo de aqui http://standards.ieee.org/develop/regauth/oui/oui.txt . Este el codigo.

Código:
<?php
set_time_limit(0);
$file = file_get_contents("oui.txt");
preg_match_all("/([0-9A-F]{6})(?:.+\n)*(.*?)\n{2}/", $file ,$res, PREG_PATTERN_ORDER);
var_dump($res);
?>

Este es el link http://www.regexr.com/38kq5 del regex. Como se indica en el regex tengo dos grupos de captura con los cuales pretendo obtener los 6 caracteres consecutivos y el pais, por ejemplo en

Código:
0000BD     (base 16)		MITSUBISHI CABLE COMPANY
520 MADISON AVENUE
NEW YORK NY 10022
                                CHINA
Seria 0000BD y CHINA los grupos de captura.

Con el archivo reducido a solo lo que se muestra en el link del regex obtendo esto:
Código:
array
  0 =>
    array
      empty
  1 =>
    array
      empty
  2 =>
    array
      empty

No muestra lo que quiero pero al menor soporta el wampserver pero cuando pruebo con el oui.txt original(2MB) aparece Esta página web no está disponible.

Como puedo hacer para que wampserver no se venga abajo con el original oui.txt

Graciass de antemano


En línea

~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 1.125



Ver Perfil
Re: php no soporta regex complejo
« Respuesta #1 en: 29 Marzo 2014, 15:43 pm »

Yo lo probé y funciona a la perfección.

Puede ser que PHP consuma mas memoria que la permitida y por eso se detenga la ejecución, pero puede ser otra cosa igual.

Revisa los error los del wampserver y veras la razón porque falla. También podrías subirlo a pastebin y postear la URL en este hilo.

PD: No vayas a copiar todos los errores que hayas tenidos, solo lo que tienen que ver con el archivo PHP que utiliza expresiones regulares para parsear el archivo oui.txt

Saludos.


En línea

Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.
franfis

Desconectado Desconectado

Mensajes: 248



Ver Perfil
Re: php no soporta regex complejo
« Respuesta #2 en: 29 Marzo 2014, 19:37 pm »

Citar
Yo lo probé y funciona a la perfección.

Puede ser que PHP consuma mas memoria que la permitida y por eso se detenga la ejecución, pero puede ser otra cosa igual.

Revisa los error los del wampserver y veras la razón porque falla. También podrías subirlo a pastebin y postear la URL en este hilo.

PD: No vayas a copiar todos los errores que hayas tenidos, solo lo que tienen que ver con el archivo PHP que utiliza expresiones regulares para parsear el archivo oui.txt
No me muestra nada, el log de errores php_error.log de wampserver esta en blanco, básicamente en el PHP.ini tengo esto:

Código:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
error_reporting = E_ALL
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = On
html_errors = On
; Log errors to specified file. PHP's default behavior is to leave this value
; empty.
; http://php.net/error-log
; Example:
;error_log = php_errors.log
; Log errors to syslog (Event Log on NT, not valid in Windows 95).
;error_log = syslog
;error_log = "c:/wamp/logs/php_error.log"
Alguna sugerencia, gracias.



~ Yoya ~ Que version de wampserver usaste?  :huh:
« Última modificación: 30 Marzo 2014, 04:08 am por #!drvy » En línea

~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 1.125



Ver Perfil
Re: php no soporta regex complejo
« Respuesta #3 en: 30 Marzo 2014, 03:51 am »

Nose, lo probe en Window pero de momento estoy en Linux...

Mira, Wampserver poco tiene que ver con lo que esta pasando, y cualquier problema que tenga que ver con PHP, Mysql o Apache. No te genera logs, porque simplemente tienes desactivado la opción para que lo genere, segun el php.ini que mostrastes.

Error logging with WAMP server in PHP

Asegúrate de que Wampserver este generando los logs de errores antes de probar con el código que tienes problema. Puedes provocar un error para darte cuenta.

Saludos.
En línea

Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.
franfis

Desconectado Desconectado

Mensajes: 248



Ver Perfil
Re: php no soporta regex complejo
« Respuesta #4 en: 30 Marzo 2014, 05:40 am »

Es extraño php_error.log sí logea los errores pero los errores de código, lo acabo de comprobar. No del tipo de error que me resulta.
En línea

~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 1.125



Ver Perfil
Re: php no soporta regex complejo
« Respuesta #5 en: 30 Marzo 2014, 05:44 am »

Revisa el error log del apache, se encuentra en wamp/logs/apache_error.log
« Última modificación: 30 Marzo 2014, 05:50 am por ~ Yoya ~ » En línea

Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.
franfis

Desconectado Desconectado

Mensajes: 248



Ver Perfil
Re: php no soporta regex complejo
« Respuesta #6 en: 30 Marzo 2014, 15:22 pm »

En el error_apache.log aparece esto:
Código:
[Sun Mar 30 08:09:17 2014] [notice] Parent: child process exited with status 3221225477 -- Restarting.
[Sun Mar 30 08:09:17 2014] [notice] Apache/2.2.17 (Win32) PHP/5.3.5 configured -- resuming normal operations
[Sun Mar 30 08:09:17 2014] [notice] Server built: Oct 18 2010 01:58:12
[Sun Mar 30 08:09:17 2014] [notice] Parent: Created child process 2240
[Sun Mar 30 08:09:18 2014] [notice] Child 2240: Child process is running
[Sun Mar 30 08:09:18 2014] [notice] Child 2240: Acquired the start mutex.
[Sun Mar 30 08:09:18 2014] [notice] Child 2240: Starting 64 worker threads.
[Sun Mar 30 08:09:18 2014] [notice] Child 2240: Starting thread to listen on port 80.
Este texto de arriba va multiplicándose a medida que ejecuto el código, cuando ejecuté otro codigo que si funciona bien, sin errores aparecio esto:

Código:
 [Sun Mar 30 08:11:26 2014] [error] [client 127.0.0.1] client denied by server configuration: C:/Dev, referer: http://localhost/pruebas/php/
[Sun Mar 30 08:11:26 2014] [error] [client 127.0.0.1] client denied by server configuration: C:/Dev, referer: http://localhost/pruebas/php/
[Sun Mar 30 08:11:26 2014] [error] [client 127.0.0.1] client denied by server configuration: C:/Dev, referer: http://localhost/pruebas/php/
[Sun Mar 30 08:11:26 2014] [error] [client 127.0.0.1] client denied by server configuration: C:/Dev, referer: http://localhost/pruebas/php/

Bueno cual será el error, voy a instalar otro wampserver para probar.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
RegEx
.NET (C#, VB.NET, ASP)
CH4ØZ 5 5,446 Último mensaje 16 Septiembre 2011, 00:21 am
por CH4ØZ
duda con regex
PHP
jhonatanAsm 8 4,327 Último mensaje 28 Abril 2012, 20:32 pm
por engel lex
duda de regex
.NET (C#, VB.NET, ASP)
spiritdead 3 2,674 Último mensaje 29 Diciembre 2012, 07:26 am
por spiritdead
[SOURCE] RegEx .NET
.NET (C#, VB.NET, ASP)
Eleкtro 3 4,140 Último mensaje 11 Septiembre 2013, 16:53 pm
por Eleкtro
clase Complejo para definir un numero complejo y realizar las operaciones
Programación C/C++
angeljonh 4 8,885 Último mensaje 1 Septiembre 2017, 04:21 am
por angeljonh
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines