Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: tabelor en 26 Diciembre 2011, 20:00 pm



Título: php avanzado
Publicado por: tabelor en 26 Diciembre 2011, 20:00 pm
Hola a todos. Estoy buscando material de php avanzado. Cualquier cosa me valdría, desde proposiciones/sugerencias hasta enlaces a webs, pdfs, lo que sea para mejorar mi nivel actual.
La cosa es que estoy desde hace relativamente poco trabajando en una empresa en la que usamos php para hacer bots, y estoy aprendiendo mucho pero he llegado a un punto en el que no estoy progresando demasiado y me gustaría acelerar el ritmo de aprendizaje. Busco principalmente material avanzado y difícil (yo ya me buscaría la vida con ello) y lo que he encontrado son tutoriales básicos y más tutoriales básicos para hacer cosas resultonas pero que no pasan de un nivel mediano de dificultad. Alguien que tenga buenas referencias?? (ebooks avanzados, paginas con ejercicios, lo que sea :P)


Título: Re: php avanzado
Publicado por: Pablo Videla en 26 Diciembre 2011, 20:02 pm
Hola a todos. Estoy buscando material de php avanzado. Cualquier cosa me valdría, desde proposiciones/sugerencias hasta enlaces a webs, pdfs, lo que sea para mejorar mi nivel actual.
La cosa es que estoy desde hace relativamente poco trabajando en una empresa en la que usamos php para hacer bots, y estoy aprendiendo mucho pero he llegado a un punto en el que no estoy progresando demasiado y me gustaría acelerar el ritmo de aprendizaje. Busco principalmente material avanzado y difícil (yo ya me buscaría la vida con ello) y lo que he encontrado son tutoriales básicos y más tutoriales básicos para hacer cosas resultonas pero que no pasan de un nivel mediano de dificultad. Alguien que tenga buenas referencias?? (ebooks avanzados, paginas con ejercicios, lo que sea :P)

Porque no trabajas con frameworks e intentas comprenderlos, y de esta forma crear tu propio framework ?


Título: Re: php avanzado
Publicado por: madpitbull_99 en 26 Diciembre 2011, 20:11 pm
Para bots en PHP te recomiendo este libro:

Webbots, Spiders, and Screen Scrapers: A Guide to Developing Internet Agents with PHP/CURL (http://www.amazon.com/Webbots-Spiders-Screen-Scrapers-Developing/dp/1593271204)

Buscando en Google lo encontrarás en formato PDF. Viene hasta con algunos ejemplos y una pequeña librería.



Título: Re: php avanzado
Publicado por: ~ Yoya ~ en 26 Diciembre 2011, 20:33 pm
Tienes que saber exactamente lo que buscas man, no puedes andar buscando manuales avanzados donde quizás leas cosas que no necesites y con los días se te olvide.

Es como si fueras a comprar un mismo libro 1,000 veces, si al final necesitaras solo un libro. O leer todo un manual de nuevo, si solo necesitas leer 1 párrafo que no entendiste.

Si necesitas PHP para crear e desarrollar bots, entonce busca algún tutorial, manual o libro que hable sobre ese tema en especifico. Por ejemplo, para la creación de bots deberás tener en cuenta:
  • Comunicación entre el cliente e servidor
  • Parseo de datos

Para la comunicación entre el cliente y servidor, puedes usar sockets, CURL, etc... Para parsear los datos, te recomiendo usar Expresiones Regulares, ya que es muy completo para parsear datos.

Saludos.


Título: Re: php avanzado
Publicado por: Graphixx en 26 Diciembre 2011, 22:28 pm
Que aprenda YII que de seguro aparte de ser un buen reto, le refuerza los conceptos de MVC (Modelo - Vista - Controlador).
http://foro.elhacker.net/php/manual_01_para_aprender_yii_framework_conceptos_basicos_e_instalacion-t342572.0.html

Ademas como framework esta pegando bastante... a lo mejor y hasta te sirve para conseguir un mejor empleo.


Título: Re: php avanzado
Publicado por: tabelor en 27 Diciembre 2011, 00:39 am
gracias Graphixx

Creo que de todas las respuestas (muy buenas todas por cierto) me quedo con la tuya. Voy a estudiar ese framework que me recomiendas.
Gracias a todos por responder


Título: Re: php avanzado
Publicado por: lnvisible en 27 Diciembre 2011, 03:29 am
Para la comunicación entre el cliente y servidor, puedes usar sockets, CURL, etc... Para parsear los datos, te recomiendo usar Expresiones Regulares, ya que es muy completo para parsear datos.

El problema de las expresiones regulares es que el orden de los atributos en una etiqueta puede cambiar o algún detalle parecido y dejar de valer, por eso es mejor usar DOM, y después, si hace falta, ER.

Además con DOM se controla mejor el contexto de la ER que estamos encajando, nos pueden interesar sólo los encajes de la ER que se producen en un determinado contexto. Eso sólo es posible con DOM o con una gramática como la que podríamos hacer con antlr (pero mejor DOM).

De todas formas, evidentemente, no quiere consejos para hacer bots, sino cosas avanzadas. Como esto: http://www.4clojure.com/problem/127


Título: Re: php avanzado
Publicado por: ~ Yoya ~ en 7 Enero 2012, 00:16 am
El problema de las expresiones regulares es que el orden de los atributos en una etiqueta puede cambiar o algún detalle parecido y dejar de valer

Si conoces bien las expresiones regulares, no tendrás problema con el orden ni nada de eso. Otra cosa es que hables basándote en tu experiencia....

Saludos.


Título: Re: php avanzado
Publicado por: WHK en 7 Enero 2012, 02:32 am
Haz tu propio foro en php, haz tu propio blog, haz tu propio portal y cuando lo estés haciendo te darás cuenta de cáda cosa que te iba faltando aprender, después de eso comenzarás a usar frameworks como codeigniter o fdc.

Nunca terminarás de aprender absolutamente todo lo relacionado a la programación WEB, y tal como decía Yoya no puedes andar leyendo cientos de tutoriales porque te lo digo de verdad que te vas a terminar aburriendo y vas a tirar todo por la borda, mejor estudia cosas ya hechas, hazle pequeños cambios, juega con los códigos y trata de hacer cosas propias simples, cada ves mas complejas, mi primera web la hize en dream weaver 8 a puro html y javascript pero lo importante es que la hize y la publique y tenia visitas y era de descargas asi bien negra con letras rojas e imágenes bién puestecitas, con el tiempo aprendí a programar mejor pero lo importante es que aprendí en la práctica y en el camino.

No puedes leerte un libro sobre como fabricar el motor de un ferrary para despues hacer uno propio, no puedes a menos que tengas mucha experiencia haciendo otros motores.

En php.net tienes toda la información más avanzada, lee sobre hooks, php hacks, aprende sobre el core, objetos multidimensionales recursivos en php5, breanchs, integración con firebug, etc. No necesitas leer otro libro que te va a repetir lo mismo que sale en php.net

Aparte puedes aprender sobre apache y como mejorar la interacción entre apache, htaccess, php, mods, ids, etc.

http://www.php.net/manual/es/
http://php.net/manual/es/internals2.ze1.zendapi.php


Título: Re: php avanzado
Publicado por: madpitbull_99 en 7 Enero 2012, 09:39 am
Haz tu propio foro en php, haz tu propio blog, haz tu propio portal y cuando lo estés haciendo te darás cuenta de cáda cosa que te iba faltando aprender, después de eso comenzarás a usar frameworks como codeigniter o fdc.

FDC? Framework Draw Coders? xD

A ver cuando lo liberas xD



Título: Re: php avanzado
Publicado por: lnvisible en 20 Marzo 2012, 20:20 pm
Si conoces bien las expresiones regulares, no tendrás problema con el orden ni nada de eso. Otra cosa es que hables basándote en tu experiencia....

Saludos.

Yoya, si no te respondo, es por falta de tiempo e interés, no porque tengas razón.

http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454

Supongo que te creías algo distinto, pero no haces más que equivocarte.

Sigue sin usar DOM y usando expresiones regulares, sabia decisión...


Título: Re: php avanzado
Publicado por: ~ Yoya ~ en 20 Marzo 2012, 23:44 pm
Dios mio, revivir un tema de hace 3 meses para responderme.

Si hablas, habla algo en base a lo que conoces, no es la primera vez que comienzas a debatir sobre un tema que no tienes ni idea. Y te sueles limitar a poner link externo y la verdad no vale la pena a contestar ese tipo de comentarios.

Igualmente no creo que conozcas mucho sobre expresiones regulares porque si supieras de verdad, dejarias de escribir tan inocentemente....

Igualmente el dom solo te ayudara si quieres pasar html pero nada mas. Las expresiones regulares te ayudan a parsear cualquier cosa y tienes control total de lo que haces y no te limitas.

Saludos.


Título: Re: php avanzado
Publicado por: lnvisible en 27 Marzo 2012, 22:56 pm
Te puedes guardar las falacias ad hominem para otro momento, esto no es filosofía, html no es un lenguaje regular, usar expresiones regulares para parsear html es una elección desastrosa, principalmente porque es imposible, no se puede parsear html con expresiones regulares porque no es un lenguaje regular. Eventualmente pueden servir para hacer una chapuza, pero hasta ahí.

http://stackoverflow.com/questions/1569917/how-do-i-parse-html-using-regular-expressions-in-c
http://kore-nordmann.de/blog/do_NOT_parse_using_regexp.html
http://stackoverflow.com/questions/590747/using-regular-expressions-to-parse-html-why-not
http://news.ycombinator.com/item?id=2742054

Sé usar expresiones regulares, mis compañeros de trabajo me preguntan cuando tienen que escribir una expresión regular, y para parsear html es mejor DOM.

Sé que esto no es stackoverflow y que no se puede votar negativo de forma tan fácil, pero ¿no van a hacer nada los moderadores ante una persona que falta al respeto de forma reiterada para defender lo indefendible?, ¿alguien que está dando malas respuestas e intentando pasarlas por buenas a través del insulto y la falacia?

En cuanto a que DOM sólo ayudará a parsear html, en realidad es xml, pero si quieres parsear otros lenguajes no regulares que no sean xml entonces tendrás que construir un parser, no usar expresiones regulares. Una opción muy buena es antlr, que está disponible para varios lenguajes, para php en concreto no estoy segura de qué será lo mejor.