Gracias Grabriel y Daniel! Agradezco sus respuestas. Tratare de ser mas claro con mis preguntas. No es para una tarea jejeje! Lo que quiero saber es como funciona esto de verdad, porque simplemente soy muy curioso y me gusta tener un conocimiento aceptable de como funciona lo que estoy usando, (conozco a personas que programan en PHP y no saben ni lo que es la SAPI). Estoy empezando con php y la verdad es que es un lenguaje sencillo, mas cuando uno tiene los fundamentos de lógica de programación, pero la duda que me aborda es como funciona en realidad por lo menos a nivel de interacción entre sus partes. Cuando empece a programar en lenguaje C me inquieto esto de igual forma (como funciona lenguaje C), y luego de investigar me entere que funciona por un compilador que traduce a maquina..... profundice mas y me entere de como están compuestos los compiladores: analizador léxico sintáctico etc.... Hasta ganas me dieron de hacer uno, de hecho estoy profundizando mas para hacerlo. Pero no fue hasta ese momento que logre una noción buena de lo que era lenguaje C y como funcionaba, que pude aprender bien a programar porque ya sabia lo que estaba haciendo y que era lo que estaba pasando una ves mandaba a compilar.
Algo así es lo que quiero lograr con PHP saber no tanto a nivel de código (por lo momentos) porque me llevaría mucho tiempo y mas si no soy ningún guru de la programación; sino mas bien a nivel de esquema saber como trabaja.
Ya me hecho algunas ideas, a continuación las menciono y ustedes me dirán si estoy o no en lo cierto: php depende solo de su interprete que es motor zend para funcionar, de tal forma pues que lo podría usar para desarrollar con el en un computador sin la necesidad de un servidor (software), pero php tiene algo que se llama SAPI que es la interfaz del lenguaje que le permite comunicarse con un servidor web y ejecutarse dentro del espacio de los recursos que le asigna el computador al mismo, por eso y las bondadosas características de php es mejor usarlo para la web y ponerlo por supuesto a trabajar en conjunto con un servidor web. PHP tiene varias SAPI una para cada servidor lo que lo hace compatible con un gran numero de servidores, cuando un cliente web hace una petición después de pasar por el ISP y los servidores DNS llega a nuestro servidor y ES EL SERVIDOR COMO POR EJEMPLO APACHE, EL QUE SE ENCARGA DE RECIBIR LA PETICIÓN, PROCESARLA, BUSCAR EL ARCHIVO EN DISCO Y DÁRSELO AL MOTOR ZEND (EN CASO DE SER UN .PHP), TAMBIÉN ES EL SERVIDOR WEB EL ENCARGADO DE GESTIONAR LAS CAPACIDADES DE COMPUTO DE LA MAQUINA DONDE SE EJECUTA Y POR TANTO EL RESPONSABLE DE ASIGNARLE RECURSOS AL MOTOR ZEND PARA QUE SE EJECUTE.
EL motor zend toma el código lo pasa por sus diferentes analizadores, lo pre-compila en bycodes y se lo pasa al interprete. El interprete, ejecuta o interpreta el código e interactua con los módulos que necesite para completar su función por ejemplo un modulo de mysql para hacer consultas en una base de datos, después el resultado se devuelve en un html que a su ves se pasa al servidor y este le envía al cliente.
¿Estoy en lo correcto?
¿Donde ha fallado mi interpretación?
¿Donde entra aquí en núcleo de php, es allí donde están todas las funciones?
LO QUE ESTA EN MAYÚSCULA ES LO QUE PREGUNTABA CON RESPECTO A APACHE O A CUALQUIER SERVIDOR WEB: ¿QUE FUNCIÓN CUMPLE ALLÍ? YO ENTENDÍ DE ACUERDO A TODO LO QUE HE INVESTIGADO QUE HACE LO QUE COMENTE ANTERIORMENTE ESTOY EN LO CORRECTO? HACE MAS QUE ESO?
Saludos Atento a sus respuestas!
Gracias! espero haberme explicado.
-El que no puede explicar lo que hace, No sabe lo que hace- F.G.