Vous êtes sur la page 1sur 9

PHP

PHP
PHP

Desarrollador(es) PHP Group [1] php.net/ Informacin general Extensiones comunes Paradigma Apareci en Diseado por .php, .phtml .php4 .php3 .php5 .phps multiparadigma: imperativo, orientado a objetos, procedural, reflexivo 1995 Rasmus Lerdorf

ltima versin estable 5.4.15 (9 de mayo de 2013) Tipo de dato Influido por Sistema operativo Licencia dinmico C, C++, Perl, Java, Python Multiplataforma Licencia PHP

PHP es un lenguaje de programacin de uso general de cdigo del lado del servidor originalmente diseado para el desarrollo web de contenido dinmico. Fue uno de los primeros lenguajes de programacin del lado del servidor que se podan incorporar directamente en el documento HTML en lugar de llamar a un archivo externo que procese los datos. El cdigo es interpretado por un servidor web con un mdulo de procesador de PHP que genera la pgina Web resultante. PHP ha evolucionado por lo que ahora incluye tambin una interfaz de lnea de comandos que puede ser usada en aplicaciones grficas independientes. PHP puede ser usado en la mayora de los servidores web al igual que en casi todos los sistemas operativos y plataformas sin ningn costo. PHP fue creado originalmente por Rasmus Lerdorf en 1995. Actualmente el lenguaje sigue siendo desarrollado con nuevas funciones por el grupo PHP.[] Este lenguaje forma parte del software libre publicado bajo la licencia PHP que es incompatible con la Licencia Pblica General de GNU debido a las restricciones del uso del trmino PHP.[2]

Visin general
PHP es un acrnimo recursivo que significa PHP Hypertext Pre-processor (inicialmente PHP Tools, o, Personal Home Page Tools).[3] Fue creado originalmente por Rasmus Lerdorf; sin embargo la implementacin principal de PHP es producida ahora por The PHP Group y sirve como el estndar de facto para PHP al no haber una especificacin formal. Publicado bajo la PHP License, la Free Software Foundation considera esta licencia como software libre. Puede ser desplegado en la mayora de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno. El lenguaje PHP se encuentra instalado en ms de 20 millones de sitios web y en un milln de servidores, el nmero de sitios en PHP ha compartido algo de su preponderante dominio con otros nuevos lenguajes no tan poderosos desde agosto de 2005. El sitio web de Wikipedia est desarrollado en PHP. Es tambin el mdulo Apache ms popular entre las computadoras que utilizan Apache como servidor web.

PHP El gran parecido que posee PHP con los lenguajes ms comunes de programacin estructurada, como C y Perl, permiten a la mayora de los programadores crear aplicaciones complejas con una curva de aprendizaje muy corta. Tambin les permite involucrarse con aplicaciones de contenido dinmico sin tener que aprender todo un nuevo grupo de funciones. Aunque todo en su diseo est orientado a facilitar la creacin de sitios webs, es posible crear aplicaciones con una interfaz grfica para el usuario, utilizando la extensin PHP-Qt o PHP-GTK. Tambin puede ser usado desde la lnea de rdenes, de la misma manera como Perl o Python pueden hacerlo; a esta versin de PHP se la llama PHP-CLI (Command Line Interface). Cuando el cliente hace una peticin al servidor para que le enve una pgina web, el servidor ejecuta el intrprete de PHP. ste procesa el script solicitado que generar el contenido de manera dinmica (por ejemplo obteniendo informacin de una base de datos). El resultado es enviado por el intrprete al servidor, quien a su vez se lo enva al cliente. Mediante extensiones es tambin posible la generacin de archivos PDF, Flash, as como imgenes en diferentes formatos. Permite la conexin a diferentes tipos de servidores de bases de datos tales como MySQL, PostgreSQL, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird y SQLite. PHP tambin tiene la capacidad de ser ejecutado en la mayora de los sistemas operativos, tales como Unix (y de ese tipo, como Linux o Mac OS X) y Microsoft Windows, y puede interactuar con los servidores de web ms populares ya que existe en versin CGI, mdulo para Apache, e ISAPI. PHP es una alternativa a las tecnologas de Microsoft ASP y ASP.NET (que utiliza C# y Visual Basic .NET como lenguajes), a ColdFusion de la empresa Adobe, a JSP/Java y a CGI/Perl. Aunque su creacin y desarrollo se da en el mbito de los sistemas libres, bajo la licencia GNU, existe adems un entorno de desarrollo integrado comercial llamado Zend Studio. CodeGear (la divisin de lenguajes de programacin de Borland) ha sacado al mercado un entorno de desarrollo integrado para PHP, denominado 'Delphi for PHP. Tambin existen al menos un par de mdulos para Eclipse, uno de los entornos ms populares.[4]

Historia
Fue originalmente diseado en Perl, con base en la escritura de un grupo de CGI binarios escritos en el lenguaje C por el programador dans-canadiense Rasmus Lerdorf en el ao 1994 para mostrar su currculum vtae y guardar ciertos datos, como la cantidad de trfico que su pgina web reciba. El 8 de junio de 1995 fue publicado "Personal Home Page Tools" despus de que Lerdorf lo combinara con su propio Form Interpreter para crear PHP/FI. Dos programadores israeles del Technion, Zeev Suraski y Andi Gutmans, reescribieron el analizador sintctico (parser en ingls) en el ao 1997 y crearon la base del PHP3, cambiando el nombre del lenguaje por PHP: Hypertext Preprocessor.[] Inmediatamente comenzaron experimentaciones pblicas de PHP3 y fue publicado oficialmente en junio de 1998. Para 1999, Suraski y Gutmans reescribieron el cdigo de PHP, produciendo lo que hoy se conoce como motor Zend. Tambin fundaron Zend Technologies en Ramat Gan, Israel.[] En mayo de 2000 PHP 4 fue lanzado bajo el poder del motor Zend Engine 1.0. El da 13 de julio de 2007 se anunci la suspensin del soporte y desarrollo de la versin 4 de PHP,[5] a pesar de lo anunciado se ha liberado una nueva versin con mejoras de seguridad, la 4.4.8 publicada el 13 de enero del 2008 y posteriormente la versin 4.4.9 publicada el 7 de agosto de 2008.[6] Segn esta noticia[7] se le dio soporte a fallos crticos hasta el 9 de agosto de 2008. El 13 de julio de 2004, fue lanzado PHP 5, utilizando el motor Zend Engine 2.0 (o Zend Engine 2).[] Incluye todas las ventajas que provee el nuevo Zend Engine 2 como: Mejor soporte para la programacin orientada a objetos, que en versiones anteriores era extremadamente rudimentario. Mejoras de rendimiento.

PHP Mejor soporte para MySQL con extensin completamente reescrita. Mejor soporte a XML (XPath, DOM, etc.). Soporte nativo para SQLite. Soporte integrado para SOAP. Iteradores de datos. Manejo de excepciones. Mejoras con la implementacin con Oracle.

Historial de lanzamiento
Significado Rojo Sin soporte

Verde Con soporte Azul Lanzamiento futuro

Versin mayor 1

Versin menor 1.0.0

Fecha de lanzamiento 08-06-1995

Notas

Llamada oficialmente "Personal Home Page Tools (PHP Tools)". Es la primera versin en usar el nombre [] "PHP". Considerada por sus creadores la "herramienta ms rpida y sencilla" para crear pginas web dinmicas. Zeev Suraski y Andi Gutmans reescribieron la base para esta versin. Se aadi un sistema de parsing de dos fases llamado motor Zend. [] [] [] []

2 3 4

2.0.0 3.0.0 4.0.0 4.1.0 4.2.0

01-11-1997 06-06-1998 22-05-2000 10-12-2001 22-04-2002

Se introducen 'superglobales' ($_GET, $_POST, $_SESSION, etc.)

Se deshabilitan register_globals por defecto. Datos recibidos por la red no son insertados en el [] espacio de nombres global, cerrando posibles agujeros de seguridad en las aplicaciones. Se introduce CLI, y CGI. [][] [] [8][9]

4.3.0 4.4.0 4.4.9

27-12-2002 11-07-2005 07-08-2008

Se aaden pginas man para phpize y php-config.

Mejoras de seguridad y arreglo de bugs. ltimo lanzamiento de la serie PHP 4.4.

PHP
[] []

4
5 5.0.0 5.1.0 5.2.0 5.2.17 5.3.0 13-07-2004 24-11-2005 02-11-2006 06-01-2011 30-06-2009

Motor Zend II con un nuevo modelo de objetos.

Mejoras de rendimiento con la introduccin de variables de compilador para el nuevo motor de PHP. Activida extensin de filtro por defecto. Soporte JSON nativo. Arreglo de vulnerabilidad crtica conectada a punto flotante. []

Soporte para espacios de nombres, enlace esttico en tiempo de ejecucin, etiqueta de salto (goto limitada), Clausuras nativas, Soporte nativo para archivos PHP (phar), recoleccin de basura para referencias circulares, soporte mejorado para Windows, sqlite3, mysqlnd como reemplazo a libmysql como biblioteca para extensiones que funcionan con MySQL, fileinfo como reemplzado de mime_magic para mejor soporte MIME, extensin de Internacionalizacin, y etiqueta ereg obsoleta. Cerca de 100 bug fixes [10] .

5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.3.7

19-11-2009 04-03-2010 22-07-2010 10-12-2010 06-01-2011 10-03-2011 18-08-2011

Gran nmero de bug fixes. Mayoritariamente arreglo de errores; FPM SAPI. Mejoras a FPM SAPI. Arreglo de vulnerabilidad crtica relacionada a punto flotante. Cerca de 60 bug fixes. Esta versin se enfoca en la estabilidad con cerca de 90 bug fixes, algunos de los cuales tienen implicaciones a la seguridad. Esta versin arregla dos errores introducidos por la versin 5.3.7. Esta versin se enfoca en la estabilidad con cerca de 90 bug fixes, algunos de los cuales tienen implicaciones a la seguridad. Arreglo de vulnerabilidad de ejecucin de cdigo arbitrario reportada por Stefan Esser, CVE-2012-0830. .. .. Arreglo de vulnerabilidad para instalaciones basadas en CGI. ... ... ... ...

5.3.8 5.3.9

23-08-2011 10-01-2012

5.3.10 5.3.11 5.3.12 5.3.13 5.3.14 5.3.15 5.3.16 5.3.17

02-02-2012 26-04-2012 03-05-2012 08-05-2012 14-06-2012 19-07-2012 16-08-2012 13-09-2012

PHP

5
5.3.18 5.3.19 5.3.20 5.3.21 5.3.22 5.3.23 5.3.24 5.4.0 18-10-2012 22-11-2012 20-12-2012 17-01-2013 21-02-2013 14-03-2013 11-04-2013 01-03-2012 ... ... ... ... ... ... ... Soporte para Trait y sintaxis abreviada de array. Elementos removidos: register_globals, safe_mode, allow_call_time_pass_reference, session_register(), [11] session_unregister() y session_is_registered(). Servidor web incorporado. Varias mejoras a caractersticas existentes y al rendimiento, y requerimientos de memoria menores. Varios bug fixes y mejoras de seguridad. Parche de seguridad para arreglar vulnerabilidad del parmetro query string de PHP-CGI. Arreglo de vulnerabilidad para instalaciones basadas en CGI y tambin para la vulnerabilidad de desbordamiento de bfer para apache_request_headers() ... ... ... ... ... ... ... ... ... ... ... ...

5.4.1 5.4.2 5.4.3

26-04-2012 03-05-2012 08-05-2012

5.4.4 5.4.5 5.4.6 5.4.7 5.4.8 5.4.9 5.4.10 5.4.11 5.4.12 5.4.13 5.4.14 5.5.0 beta3 5.5.0

14-06-2012 19-07-2012 16-08-2012 13-09-2012 18-10-2012 22-11-2012 20-12-2012 17-01-2013 21-02-2013 14-03-2013 11-04-2013 11-04-2013

Sin fecha

Nuevos generadores para bucles, empty() soporta expresiones. Se pierde el soporte para Windows XP y [12] Windows Server 2003. El desarrollo de PHP 6 ha sido retrasado porque los desarrolladores decidieron que el enfoque actual para [13] tratar cadenas Unicode no es correcto, y estn considerando formas alternas para la siguiente versin. Las mejoras planeadas para PHP 6 fueron aadidas en su lugar en PHP 5.3.0 (Soporte para espacios de nombre, enlace esttico en tiempo de ejecucin, funciones lambda, clausuras, goto) y 5.4.0 (traits, revinculacin de clausura).

6.0.0

Sin fecha

PHP

Sintaxis
Programa Hola mundo con PHP embebido en cdigo HTML: <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8" /> <title> Ejemplo bsico PHP</title> </head> <body> <?php echo 'Hola mundo'; ?> </body> </html> El intrprete de PHP solo ejecuta el cdigo que se encuentra entre sus delimitadores. Los delimitadores ms comunes son <?php para abrir una seccin PHP y ?> para cerrarla. El propsito de estos delimitadores es separar el cdigo PHP del resto de cdigo, como por ejemplo el HTML.[14] Las variables se prefijan con el smbolo del dolar ($) y no es necesario indicar su tipo. Las variables, a diferencia de las funciones, distinguen entre maysculas y minsculas. Las cadenas de caracteres pueden ser encapsuladas tanto en dobles comillas como en comillas simples, aunque en el caso de las primeras, se pueden insertar variables en la cadena directamente, sin necesidad de concatenacin. Los comentarios se pueden escribir bien con dos barras al principio de la lnea, o con una almoadilla. Tambin permite comentarios multi-lnea encapsulados en /* */. En cuanto a las palabras clave, PHP comparte con la mayora de otros lenguajes con sintaxis C las condiciones con if, los bucles con for y while y los retornos de funciones. Como es habitual en este tipo de lenguajes, las sentencias deben acabar con punto y coma (;).

Caractersticas de PHP
Caractersticas
Orientado al desarrollo de aplicaciones web dinmicas con acceso a informacin almacenada en una base de datos. Es considerado un lenguaje fcil de aprender, ya que en su desarrollo se simplificaron distintas especificaciones, como es el caso de la definicin de las variables primitivas, ejemplo que se hace evidente en el uso de php arrays. El cdigo fuente escrito en PHP es invisible al navegador web y al cliente, ya que es el servidor el que se encarga de ejecutar el cdigo y enviar su resultado HTML al navegador. Esto hace que la programacin en PHP sea segura y confiable. Capacidad de conexin con la mayora de los motores de base de datos que se utilizan en la actualidad, destaca su conectividad con MySQL y PostgreSQL. Capacidad de expandir su potencial utilizando mdulos (llamados ext's o extensiones). Posee una amplia documentacin en su sitio web oficial, entre la cual se destaca que todas las funciones del sistema estn explicadas y ejemplificadas en un nico archivo de ayuda. Es libre, por lo que se presenta como una alternativa de fcil acceso para todos. Permite aplicar tcnicas de programacin orientada a objetos. Incluso aplicaciones como Zend framework, empresa que desarrolla PHP, estn totalmente desarrolladas mediante esta metodologa.

PHP No requiere definicin de tipos de variables aunque sus variables se pueden evaluar tambin por el tipo que estn manejando en tiempo de ejecucin. Tiene manejo de excepciones (desde PHP5). Si bien PHP no obliga a quien lo usa a seguir una determinada metodologa a la hora de programar, an hacindolo, el programador puede aplicar en su trabajo cualquier tcnica de programacin o de desarrollo que le permita escribir cdigo ordenado, estructurado y manejable. Un ejemplo de esto son los desarrollos que en PHP se han hecho del patrn de diseo Modelo Vista Controlador (MVC), que permiten separar el tratamiento y acceso a los datos, la lgica de control y la interfaz de usuario en tres componentes independientes. Debido a su flexibilidad ha tenido una gran acogida como lenguaje base para las aplicaciones WEB de manejo de contenido, y es su uso principal.

Inconvenientes
Como es un lenguaje que se interpreta en ejecucin, para ciertos usos puede resultar un inconveniente que el cdigo fuente no pueda ser ocultado. La ofuscacin es una tcnica que puede dificultar la lectura del cdigo pero no necesariamente impide que el cdigo sea examinado. Debido a que es un lenguaje interpretado, un script en PHP suele funcionar considerablemente ms lento que su equivalente en un lenguaje de bajo nivel, sin embargo este inconveniente se puede minimizar con tcnicas de cache tanto en archivos como en memoria. Las variables al no ser tipadas dificulta a los diferentes IDEs para ofrecer asistencias para el tipeado del cdigo, aunque esto no es realmente un inconveniente del lenguaje en s. Esto es solventado por Zend Studio aadiendo un comentario con el tipo a la declaracin de la variable.

XAMPP, LAMP, WAMP, MAMP


XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor Web Apache y los intrpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrnimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. El programa est liberado bajo la licencia GNU y acta como un servidor Web libre, fcil de usar y capaz de interpretar pginas dinmicas. Actualmente XAMPP esta disponible para Microsoft Windows, GNU/Linux, Solaris, y MacOS X. LAMP presenta una funcionalidad parecida a XAMPP, pero enfocada en Linux, y WAMP lo hace enfocado en Windows.

Principales sitios desarrollados con PHP


PHP es utilizado en millones de sitios, entre los ms destacados se encuentran Wikipedia.org, Facebook.com y Wordpress.com.

Referencias
[1] http:/ / www. php. net/ [3] FAQ General (http:/ / us. php. net/ manual/ en/ faq. general. php) PHP.net. [4] Existen tanto PHPEclipse como PDT for Eclipse. Vanse http:/ / www. phpeclipse. com y http:/ / www. eclipse. org/ pdt [5] PHP: News Archives 2007 (http:/ / www. php. net/ archive/ 2007. php) (en ingls) Consultado 9 de diciembre de 2007 [6] PHP: News Archives 2008 (http:/ / www. php. net/ archive/ 2008. php#id2008-08-07-1) (en ingls) [7] Archivo: 13 Julio de 2007 (http:/ / www. php. net/ archive/ 2007. php#2007-07-13-1) PHP.net. [10] http:/ / www. php. net/ ChangeLog-5. php#5. 3. 1

PHP

Enlaces externos
Wikilibros Wikilibros alberga un libro o manual sobre Programacin en PHP. Sitio web oficial de PHP (http://www.php.net) (en ingls) Tutorial de PHP y Mysql (http://paginaweb2.com/cat-php-y-mysql-6) Manual oficial en espaol (http://docs.php.net/manual/es)

Fuentes y contribuyentes del artculo

Fuentes y contribuyentes del artculo


PHP Fuente: http://es.wikipedia.org/w/index.php?oldid=67095523 Contribuyentes: -jem-, 1v4n X, Acifuentes, Adryitan, Aeoris, Af3, Agarzon, Airunp, AlexFBP, Alexav8, Alexrr1195, Alhen, Almorca, Aloriel, Alvk4r, Amads, Amitie 10g, AndreX, Andreasmperu, Angus, Aparejador, Armin76, Ascnder, Ashrey, Atilathehun, Atomo64, Baiji, Barcex, Bedwyr, Bernethe, Betomorales, Biasoli, Biktora, Bmolina, Boja, Bucephala, Cabseiya, Calvia, Cameri, CanaryESP, Caritdf, Carlos I, Cinabrium, Cobalttempest, Cocojeison, ColdWind, Comae, Contractil, Cookie, Covi, Cratn, Dangarcia, Danielba894, Danielstp, Dantrix2006, Dark, Darklooker, Darkxnightmare, Delunahugoren, Der metzgermeister, Desatonao, Diegusjaimes, Digigalos, Djrolando, Dodo, Drjackzon, Dusan, Dussarax, ERFon, Edegugli, EduMurru, Edub, Ejmeza, El mago de la Wiki, Eloi.sanmartin, Emiduronte, Equi, Er Komandante, ErizoAzul, Erkow, Ernesto Graf, Estemon, Exos, Faelomx, FedericoMP, Flashlack, Fmariluis, Fragale, FrancoGG, Franj4, Frigotoni, Frutero, Gabriel Acquistapace, Gacpro, Gacq, Galandil, GermanX, Globalpegasus, Gmagno, Gnovaro, Gotrek, Gronky, Gustavoang, Gustronico, HUB, Hampcky, Hawking, Hispa, Huds, Humanware, Humberto, Hvallenilla, Icvav, Ignacio Icke, Ikarush, Ing amc, Ingolll, Interwiki, Isra00, J. A. Glvez, JMorchio, Jakeukalane, Jarisleif, Jcfidy, Jecanre, Jesuja, Jkbw, Joanfont, JoaquinFerrero, Jolumo.ar, Jorge c2010, JorgeGG, JorgeVla, Jose figueredo, Joseaperez, Josemanuelgp, Josexu32, Jstitch, JuanRodrguez, Judas iscariote, Julie, Jyon, KAziKE81, Kenichiaeb, Kerberos, Kizar, KshanaRules, Kved, Labina7, Lance, Lefrato, Leonardocaballero, Leonpolanco, Levhita, Locos epraix, Locovich, Lourdes Cardenal, LuisManson, MadriCR, Mahadeva, Maldoror, Maniaticko, Mansoncc, Manuel-f-3, ManuelGR, Manuelt15, Manvehe, Manw, Manz, Marc-Andr Abrock, MartinAraujo, Matdrodes, Maveric149, Mechita korn, Meltryth, MetalMind, Mig21bp, Migke, Miguelzilli, Minterior, Mister, Mogutu, Montgomery, Moriel, Muro de Aguas, Murphy era un optimista, Murven, Mximo de Montemar, Nakayama, Neoyukito, Netito777, NickelSpider, Niqueco, Niuweme, Nixn, No s qu nick poner, Nonick, Nowarco, Numbo3, OMA, OMenda, Obelix83, Omanriquez, Pabbec, Pablete2005, Pan con queso, Paporrubio, Paradoja, Pare Mo, Patio, Pausalvi, Phansys, Pilaf, Platonides, Poco a poco, Pownerus, Plux, Qwertyytrewqqwerty, Racso, Rafucho12, Raulshc, Raystorm, Razican, Reinam, Reok, Resped, RicardoCorai, Rickware, Rocandante, Rolfrid, Rosarino, RoyFocker, Sabbut, SaeedVilla, Sagues, Sanbec, Santhy, Sauron, Seretbit, Shooke, Siabef, Sitiosmdq, Snakeyes, Solarstone, Spa karmona, Sunsinron, SuperBraulio13, Superzerocool, Syrus, Tarzanete, TeLiX, Tecnocat128, TheBK, Tirithel, Tomatejc, Tonibilly, Tosin2627, Tostadora, Triku, Txo, Txuspe, UA31, Ugly, Unf, VARGUX, Vennersteve, Vic Fede, Vicaram, Victor fidel serrano, Viriato22, Vitamine, Vitorres, Vladimirjimenez, Walterllanos, Walturius, Wikier, Wikispanishuser, Wilfredor, Wpersei, Xiul, Xobra, Xombra, Xoneca, Yeza, Ynnek, YoaR, Yonderboy, Zanaqo, Zenkor, 1048 ediciones annimas

Fuentes de imagen, Licencias y contribuyentes


Archivo:PHP-logo.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:PHP-logo.svg Licencia: Public Domain Contribuyentes: Biktora, Chealer, Pixewakb, 1 ediciones annimas Archivo:Wikibooks-logo.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Wikibooks-logo.svg Licencia: logo Contribuyentes: User:Bastique, User:Ramac et al.

Licencia
Creative Commons Attribution-Share Alike 3.0 Unported //creativecommons.org/licenses/by-sa/3.0/

Vous aimerez peut-être aussi