Php lenguaje interpretado
PHP: Hypertexto Preprocesador, más conocido por sus siglas en PHP (acrónimo recursivo) es un lenguaje de programación libre utilizado principalmente para producir páginas Web dinámicas a través de un servidor HTTP, pero también puede funcionar como cualquier lenguaje interpretado localmente. PHP es un lenguaje imperativo orientado a objetos.
PHP fue creado por Rasmus Lerdorf en 1994 por su página Web. Originalmente era una biblioteca de software en C que utilizó para realizar un seguimiento de los visitantes que vinieron a ver su CV. Poco a poco, mientras añadía nuevas características, Rasmus ha transformado la biblioteca en una aplicación capaz de comunicarse con las bases de datos y crear aplicaciones Web dinámicas simples. Rasmus eligió en 1995 para publicar su código, para que todos puedan usar y disfrutar. PHP entonces llamado PHP / FI (Personal Home Page Tools / Formulario de Intérpretes). En 1997, dos estudiantes, Gutmans y Zeev Suraski, desarrollaron el corazón de PHP / FI. Este trabajo llevó un año más tarde a la versión 3 de PHP, y luego se convirtió en PHP: Hypertext Preprocessor. Poco después, Andi Gutmans y Zeev Suraski comenzaron reescribir el motor interno de PHP. Fue este nuevo motor, el motor de Zend – la palabra es una contracción de Zend Zeev y Andi – que fue la base de la versión de PHP.
En 2002, PHP es utilizado por más de 8 millones de sitios Web en todo el mundo en 2007 por más de 20 millones y 2013 por más de 244 millones.
La versión actual es la Versión 5, Release 13 de julio 2004. Utiliza Zend Engine y presenta más potente modelado de objetos, gestión de fallos basado en el modelo de excepciones, y las capacidades de gestión para las empresas. PHP trae muchas nuevas características, como el soporte de SQLite y los medios para manipular archivos y en base a estructuras XML libxml:
– unaAPIsimple llamadoSimpleXML;
– una API bastante completa Document Object Model;
– Interfaz XPath utilizando objetos DOM y SimpleXML;
– la integración de las transformaciones XSLT libxslt vía extensión XSL;
– una mejor gestión de losobjetosen relación con PHP.
PHP pertenece a la gran familia de descendientes de C, cuya sintaxis es muy estrecha. En particular, su sintaxis y estructura se asemejan a los lenguajes de Java y Perl , excepto que el código PHP puede ser fácilmente mezclado con código HTML en un archivo PHP.
En un uso de la Web, la ejecución de código PHP es la siguiente: Cuando un visitante solicita ver una página Web, el navegador envía una solicitud al servidor HTTP correspondiente. Si la página se identifica como PHP (normalmente a través de la extensión php) script, el servidor llama al intérprete PHP que procesará y generar el código final de la página (por lo general consiste en HTML o XHTML, sino también menudo CSS y JS). Este contenido se envía al servidor HTTP, que finalmente se envía al cliente.
Un paso adicional se agrega a menudo: el del diálogo entre PHP y la base de datos. Típicamente, PHP abre una conexión con el servidor DBMS que él transmite las solicitudes y obtiene los resultado, antes de cerrar la conexión.
Usar PHP como un generador de páginas Web dinámicas es el más común, pero también puede ser utilizado como un lenguaje de programación o script desde la línea de comandos sin utilizar un servidor HTTP o navegador. A continuación, permite utilizar muchas características del lenguaje C y varias otras compilaciones sin requerir ningún cambio en el código fuente.
Diferentes plataformas
Un servidor Web en una arquitectura de tres niveles se compone de un sistema operativo, un servidor HTTP, un idioma y, finalmente, un sistema de gestión de bases de datos (DBMS), esto constituye una plataforma.
En el caso de PHP como lenguaje de servidor, las combinaciones más comunes son los de una plataforma LAMP (Linux, Apache, MySQL, PHP) y (PHP en Windows Apache MySQL) WAMP. Plataforma WAMP se instala generalmente a través de un único software que integra Apache, MySQL y PHP, por ejemplo EasyPHP, VertrigoServ, WampServer o UwAmp. No es el mismo tipo de plataformas de software MAMP (Mac OS Apache PHP MySQL), al igual que el software MAMP.
Hay otras variaciones, como las plataformas LAPP (M MySQL se sustituye por el P PostgreSQL) o el software XAMPP (Apache MySQL PHP Perl, la X indica que el software es multiplataforma) Kit de desarrollo de plataforma cruzada.
Confusión en ocasiones puede existir entre la propia plataforma y el software a instalar, si tienen el mismo nombre. También hay que señalar que la gran mayoría de software «todo en uno» están destinados para el desarrollo de aplicaciones Web a nivel local, no para ser instalados en los servidores Web. Una excepción a esto es quizás Zend Server, Zend Technologies distribuidas por el servidor, que está diseñado para funcionar tanto en el entorno de desarrollo y producción.
PHP es básicamente un lenguaje interpretado, que es a expensas de la velocidad de ejecución del código. Su alta popularidad asociada con su uso en sitios Web con alta densidad de tráfico (Yahoo, Facebook) trajo un número de personas de tratar de mejorar su rendimiento con el fin de servir a un mayor número de usuarios de estos sitios Web sin necesidad de la compra de nuevos servidores.
Reescribiendo el corazón de PHP, lo que llevó al motor Zend en PHP 4 y PHP Zend Engine 2 a 5, es una optimización. Zend Engine compilado internamente en código PHP a bytecode ejecutado por una máquina virtual. La APC fuente y eAccelerator obra abierta poniendo el bytecode producido por los proyectos de motor de Zend en caché para evitar PHP para cargar y analizar secuencias de comandos para cada solicitud. Desde la versión 5.5 de PHP, el lenguaje tiene un caché de código de operación nativo (llamado OpCache) obsoleto a el módulo de APC.