Vous êtes sur la page 1sur 13

Wiki Loves Monuments: Fotografa un monumento, ayuda a

Wikipedia y gana!

PHP
Para otros usos de este trmino, vase PHP (desambiguacin).

PHP

Desarrollador(es)

PHP Group
php.net

Informacin general

Extensiones .php, .phtml, .php3, .php4, .php5, .php7, .phps


comunes

Paradigma Multiparadigma: imperativo, funcional, orientado


a objetos, procedural, reflexivo

Apareci en 1995

Diseado por Rasmus Lerdorf

ltima versin 7.1.9 (1 de septiembre de 2017(14 das))


estable

Sistema de tipos Dinmico, dbil


Implementaciones Motor Zend, HHVM, Phalanger, Quercus,
Project Zero, Parrot

Influido por Perl, C, C++, Java, Tcl

Ha influido a Falcon, Hack

Sistema operativo Unix-like, Windows

Licencia Licencia PHP

[editar datos en Wikidata]

PHP es un lenguaje de programacin de propsito 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
grficasindependientes. Puede ser usado en la mayora de los servidores web al igual que
en casi todos los sistemas operativos y plataformas sin ningn costo.
Fue creado originalmente por Rasmus Lerdorf en el ao 1995. Actualmente el lenguaje
sigue siendo desarrollado con nuevas funciones por el grupo PHP. 1 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

ndice
[ocultar]

1Etimologa
2Visin general
3Historia
o 3.1Historial de lanzamiento
4Sintaxis
5Caractersticas de PHP
o 5.1Caractersticas
o 5.2Inconvenientes
o 5.3XAMPP, LAMP, WAMP, MAMP, UwAmp
o 5.4Principales sitios desarrollados con PHP
6Referencias
7Enlaces externos

Etimologa[editar]
PHP es un acrnimo recursivo que significa PHP Hypertext
Preprocessor (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 con la PHP License, la Free Software
Foundation considera esta licencia como software libre.2

Visin general[editar]
PHP 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 basados en PHP se ha visto reducido progresivamente en los ltimos aos, con la
aparicin de nuevas tecnologas como Node.JS, Golang, ASP.NET, etc. El sitio web de
Wikipedia est desarrollado en PHP. 4 Es tambin el mdulo Apache ms popular entre las
computadoras que utilizan Apache como servidor web.
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 alguna extensin
como puede ser PHP-Qt, PHP-GTK,5 WxPHP, WinBinder, Roadsend PHP, Phalanger, Phc
o HiP Hop VM. Tambin puede ser usado desde la lnea de comandos, de la misma
manera como Perl o Python pueden hacerlo; a esta versin de PHP se la llama PHP-CLI
(Command Line Interface).6
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,7 Flash, as como
imgenes en diferentes formatos.
Permite la conexin a diferentes tipos de servidores de bases de datos
tanto SQL como NoSQL tales como MySQL, PostgreSQL, Oracle, ODBC, DB2, Microsoft
SQL Server, Firebird, SQLite o MongoDB.8
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, CGI/Perl y a Node.js/Javascript. 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.9

Historia[editar]
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 1997 y crearon la base del PHP3, y
cambiaron el nombre del lenguaje por PHP: Hypertext Preprocessor.1 Inmediatamente
comenzaron experimentaciones pblicas de PHP3, y se public oficialmente en junio de
1998. Para 1999, Suraski y Gutmans reescribieron el cdigo de PHP, y produjeron lo que
hoy se conoce como motor Zend. Tambin fundaron Zend Technologies en Ramat
Gan, Israel.1
En mayo del 2000, PHP 4 se lanz bajo el poder del motor Zend 1.0. El 13 de julio del
2007 se anunci la suspensin del soporte y desarrollo de la versin 4 de PHP, 10 y, 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 del 2008. 11 Segn esta noticia,12 se le dio soporte a fallos crticos hasta el 9 de
agosto del 2008.
El 13 de julio del 2004, se lanz PHP 5, utilizando el motor Zend Engine 2.0 (o Zend
Engine 2).1 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
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[editar]

Significado

Rojo Versin antigua, sin soporte

Amarillo Con soporte para errores de seguridad

Verde Con soporte para errores generales y de seguridad

Azul Lanzamiento futuro

Rosa Lanzamiento Cancelado


Fi
Fech
n
Ve a de
de
rsi lanz Notas
so
n amie
po
nto
rte

08-
Llamada oficialmente "Personal Home Page Tools (PHP Tools)". Es la primera
1.0 06-
versin en usar el nombre "PHP".13
1995

01-
Considerada por sus creadores la "herramienta ms rpida y sencilla" para
2.0 11-
crear pginas web dinmicas.13
1997

20
-
06-
10
3.0 06- Zeev Suraski y Andi Gutmans reescribieron la base para esta versin. 13
-
1998
20
00

23
-
22-
01
4.0 05- Se aadi un sistema de parsing de dos fases llamado motor Zend. 14
-
2000
20
01

12
-
10-
03
4.1 12- Se introducen 'superglobales' ( $_GET , $_POST , $_SESSION , etc.)14
-
2001
20
02

06
- Se deshabilitan register_globals por defecto. Datos recibidos por la red
22-
09
4.2 04- no son insertados en el espacio de nombres global, cerrando posibles agujeros
-
2002
20 de seguridad en las aplicaciones. 14
02
31
-
27-
03
4.3 12- Se introduce CLI, y CGI.1415
-
2002
20
05

07
-
11-
08 Se aaden pginas man para phpize y php-config .14
4.4 07-
-
2005
20
08

05
-
13-
09
5.0 07- Motor Zend II con un nuevo modelo de objetos.16
-
2004
20
05

24
-
24-
08 Mejoras de rendimiento con la introduccin de variables de compilador para el
5.1 11-
- nuevo motor de PHP.16
2005
20
06

06
-
02-
01
5.2 11- Activida extensin de filtro por defecto. Soporte JSON nativo.16
-
2006
20
11

14 Soporte para espacios de nombres, enlace esttico en tiempo de ejecucin,


- etiqueta de salto (GOTO limitada), Clausuras nativas, Soporte nativo para
30- 08 archivos PHP (phar), recoleccin de basura para referencias circulares, soporte
5.3 06- - mejorado para Windows, sqlite3, mysqlnd como reemplazo a libmysql como
2009 20 biblioteca para extensiones que funcionan con MySQL, fileinfo como
14 reemplzado de mime_magic para mejor soporte MIME, extensin de
17
Internacionalizacin, y etiqueta ereg obsoleta.

01- 15 Soporte para Trait y sintaxis abreviada de array. Elementos


5.4 03- - eliminados: register_globals , safe_mode , allow_call_time_pa
2012 09 ss_reference , session_register() , session_unregister() y
- session_is_registered() . Servidor web incorporado.18 Varias mejoras
20 a caractersticas existentes y al rendimiento, y requerimientos de memoria
15 menores.

20
-
20-
06 Nuevos generadores para bucles, empty() soporta expresiones. Se pierde el
5.5 06-
2013
- soporte para Windows XP y Windows Server 2003.19
20
16

31
-
20-
12 Constantes con expresiones escalares, listas de argumentos de longitud variable
5.6 08-
- y exponencial mediante el operador **.20
2014
20
18

El desarrollo de PHP 6 ha sido retrasado porque los desarrolladores decidieron


que el enfoque actual para tratar cadenas Unicode no es correcto, y estn
considerando formas alternas para la siguiente versin.21 Las mejoras
6.x 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).

Se ha abandonado la versin 6 de PHP siendo la siguiente versin la 7.22

03
03- -
11- 11
7.0 Mejoras de rendimiento ,24 declaracin de tipos de retorno en funciones 25
2015 -
23
20
18
01
01- -
12- 12 Tipo de retorno vaco,28 Clase constante modificadores de visibilidad,29 Tipos
7.1
2016 - nullable,30 iterable de tipo seudo, 31 Captura mltiples tipos de excepciones.32
2627
20
19

Sintaxis[editar]
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.33
Las variables se prefijan con el smbolo del dlar ( $ ) 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
almohadilla. 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[editar]
Caractersticas[editar]

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.
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.
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, aun
hacindolo, el programador34 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[editar]

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 cach tanto en archivos como en memoria.
En las versiones previas a la 7, las variables no son
tipificadas, lo cual dificulta a los diferentes IDEs ofrecer
asistencias para el tipificado del cdigo, aunque esto no
es realmente un inconveniente del lenguaje en s. Esto es
solventado por algunos IDEs aadiendo un comentario
con el tipo a la declaracin de la variable.
XAMPP, LAMP, WAMP, MAMP, UwAmp[editar]

La LAMP comprende PHP (aqu con Squid).

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. Es un software "liviano" que se puede utilizar
en cualquier PC. No necesita muchos recursos.
LAMP presenta una funcionalidad parecida a XAMPP, pero enfocada en Linux, WAMP lo
hace enfocado en Windows, y MAMP para MacOS X. UwAmp es muy idntico a WAMP y
se destaca en que se puede ejecutar desde una memoria USB.
Principales sitios desarrollados con PHP [editar]
Se utiliza PHP en millones de sitios; entre los ms destacados se encuentran
Wikipedia.org, Facebook.com y Wordpress.com.

Referencias[editar]
1. Saltar a:a b c d Historia de PHP y Proyectos
Relacionados. Archivado desde el original el 30 de
noviembre de 2015. Consultado el 17 de octubre de 2012.
2. Saltar a:a b Proyecto GNU - Licencias de software libre
incompatibles con la GPL. Consultado el 17 de octubre de
2012.
3. Volver arriba FAQ General PHP.net.
4. Volver arriba Historical trends in the usage of server-side
programming languages for websites (en ingls).
W3Techs. Consultado el 10 de septiembre de 2013.
5. Volver arriba PHP-GTK (en ingls). PHP Group.
Consultado el 10 de septiembre de 2013.
6. Volver arriba PHP: Funcionamiento en lnea de
comandos. PHP Group. Consultado el 10 de septiembre
de 2013.
7. Volver arriba dompdf - HTML to PDF converter
(PHP5) (en ingls). Consultado el 10 de septiembre de
2013.
8. Volver arriba PHP: Extensiones de bases de datos -
Manual. PHP Group. Consultado el 10 de septiembre de
2013.
9. Volver arriba Existen tanto PHPEclipse como PDT for
Eclipse.
Vanse http://www.phpeclipse.com y http://www.eclipse.org/
pdt
10. Volver arriba PHP: News Archives 2007 (en ingls).
Consultado 9 de diciembre de 2007.
11. Volver arriba PHP: News Archives 2008 (en ingls).
12. Volver arriba Archivo: 13 de julio de 2007 PHP.net.
13. Saltar a:a b c History of PHP and related projects. The
PHP Group. Consultado el 25 de febrero de 2008.
14. Saltar a:a b c d e PHP: PHP 4 ChangeLog. The PHP
Group. 3 de enero de 2008. Consultado el 22 de febrero de
2008.
15. Volver arriba PHP: Using PHP from the command line -
Manual:. The PHP Group. Consultado el 11 de septiembre
de 2009.
16. Saltar a:a b c PHP: PHP 5 ChangeLog. The PHP Group.
8 de noviembre de 2007. Consultado el 22 de febrero de
2008.
17. Volver arriba Last 5.3 release ever available: PHP 5.3.29
- 5.3 now EOL. PHP. Consultado el 20 de septiembre de
2013.
18. Volver arriba Built-in web server. Consultado el 26 de
marzo de 2012.
19. Volver arriba What has changed in PHP 5.5.x.
Consultado el 13 de abril de 2013.
20. Volver arriba Migrating from PHP 5.5.x to PHP 5.6.x.
Archivado desde el original el 30 de noviembre de 2015.
Consultado el 20 de septiembre de 2014.
21. Volver arriba PHP 6: Features, Release Date, Hosting
and Download. Consultado el 6 de mayo de 2011.
22. Volver arriba Nombre de la prxima versin de PHP.
Consultado el 24 de julio de 2014.
23. Volver arriba RFC: PHP 7.0 Timeline. 4 de noviembre de
2015. Consultado el 4 de noviembre de 2015.
24. Volver arriba Benchmarking PHPNG!.
25. Volver arriba PHP RFC: Return Type Declarations.
26. Volver arriba Preparation Tasks. Consultado el 5 de julio
de 2016.
27. Volver arriba PHP 7.1.0 GA - Externals. externals.io.
Consultado el 30 de noviembre de 2016.
28. Volver arriba PHP: rfc:void_return_type. php.net. 9 de
noviembre de 2015. Consultado el 14 de noviembre de
2015.
29. Volver arriba PHP: rfc:class_constant_visibility. php.net.
27 de octubre de 2015. Consultado el 8 de diciembre de
2015.
30. Volver arriba PHP RFC: Nullable Types. php.net. 10 de
abril de 2014. Consultado el 14 de junio de 2016.
31. Volver arriba PHP RFC: Iterable. php.net. 10 de junio de
2016. Consultado el 19 de febrero de 2017.
32. Volver arriba PHP RFC: Catching Multiple Exception
Types. php.net. 6 de marzo de 2016. Consultado el 19 de
febrero de 2017.
33. Volver arriba PHP: Sintaxis bsica. Consultado el 13 de
abril de 2013.
34. Volver arriba trabajo programador php. Consultado el 23
de mayo de 2017.

Enlaces externos[editar]
Wikilibros alberga un libro o manual
sobre Programacin en PHP.
Sitio web oficial de PHP (en ingls).
PHP-by-Example Probar las funciones de PHP en lnea
(+500).
Tutorial extensivo de PHP y MySQL (en ingls).
Tutorial de PHP y Mysql.
Manual oficial en espaol.
Manuales diversos de PHP.
Insertar registros en PHP y MySQL.
Categoras:
PHP
Siglas de informtica
Lenguajes de programacin
Lenguajes de programacin por procedimientos
Lenguajes de programacin dinmicamente tipados
Software multiplataforma
Terminologa de Internet
Lenguajes de programacin de alto nivel
Men de navegacin
No has iniciado sesin

Discusin

Contribuciones

Crear una cuenta

Acceder
Artculo
Discusin
Leer
Editar
Ver historial
Buscar

Portada
Portal de la comunidad
Actualidad
Cambios recientes
Pginas nuevas
Pgina aleatoria
Ayuda
Donaciones
Notificar un error
Imprimir/exportar
Crear un libro
Descargar como PDF
Versin para imprimir
En otros proyectos
Wikimedia Commons
Wikilibros
Wikiversidad
Herramientas
Lo que enlaza aqu
Cambios en enlazadas
Subir archivo
Pginas especiales
Enlace permanente
Informacin de la pgina
Elemento de Wikidata
Citar esta pgina
Otros proyectos
Wikilibros
En otros idiomas

English

Bahasa Indonesia
Bahasa Melayu
Portugus



96 ms
Editar enlaces
Se edit esta pgina por ltima vez el 13 sep 2017 a las 23:04.
El texto est disponible bajo la Licencia Creative Commons Atribucin
Compartir Igual 3.0; pueden aplicarse clusulas adicionales. Al usar este

sitio, usted acepta nuestros trminos de uso y nuestra poltica de privacidad.


Wikipedia es una marca registrada de la Fundacin Wikimedia, Inc., una

organizacin sin nimo de lucro.

Normativa de privacidad

Acerca de Wikipedia

Limitacin de responsabilidad

Desarrolladores

Declaracin de cookies

Versin para mviles

Vous aimerez peut-être aussi