Desendolcador(es) | Rasmus Lerdorf, Andi Gutmans, Grupo PHP (es) , Zend Technologies (es) y Zeev Suraski |
---|---|
Creador | Rasmus Lerdorf |
Estensión de ficheru |
.php .phar .phtml .php4 .php3 .php5 .phps .php7 .pht |
Tipu de MIME |
application/x-httpd-php application/x-httpd-php-source application/x-php text/x-php |
Versión inicial | 8 xunu 1995 |
Última versión |
8.4.0 RC4 (versión RC (es) , 7 payares 2024) 8.4.1 (versión estable, 21 payares 2024) |
Escritu en | Llinguaxe de programación C |
Sistema operativu | sistema operativu asemeyáu a Unix y Microsoft Windows |
Formatu de ficheru de llectura | PHP script (en) |
Tipu | llinguaxe de programación empobináu a oxetos, llinguaxe de programación multiparadigma, llinguaxe interpretáu, lenguaje de script (es) , llinguaxe de programación por procedimientos, llinguaxe de programación imperativu y llinguaxe de programación |
Llicencia | Licencia PHP (es) |
Más información | |
official_php | |
Sitiu web | Web oficial |
Códigu fonte | Códigu fonte |
Etiqueta de Stack Exchange | Stack Exchange |
GitHub | php |
PHP, sigla recursiva n'inglés de PHP: Hypertext Preprocessor (procesador de hipertestu), ye un llinguaxe de programación de propósitu xeneral de códigu del llau del sirvidor orixinalmente diseñáu pal desenvuelvo web de conteníu dinámico. Foi unu de los primeros llinguaxes de programación del llau del sirvidor que podíen incorporase direutamente nel documentu HTML en llugar de llamar a un ficheru esternu que procese los datos. El códigu ye interpretáu por un sirvidor web con un módulu de procesador de PHP que xenera la páxina web resultante. PHP evolucionó polo qu'agora inclúi tamién una interfaz de llinia de comandos que puede ser usada n'aplicaciones gráfiques independientes. Puede ser usáu na mayoría de los sirvidores web al igual qu'en casi tolos sistemes operativos y plataformes ensin nengún costu.
Foi creáu orixinalmente por Rasmus Lerdorf nel añu 1995. Anguaño'l llinguaxe sigue siendo desenvueltu con nueves funciones pol grupu PHP.[3] Esti llinguaxe forma parte del software llibre publicáu so la llicencia PHP, que ye incompatible cola Llicencia Pública Xeneral de GNU por cuenta de les restricciones del usu del términu PHP.[4]
PHP ye un acrónimu recursivo que significa PHP Hypertext Preprocessor (primeramente PHP Tools, o, Personal Home Page Tools).[5] Foi creáu orixinalmente por Rasmus Lerdorf; sicasí, la implementación principal de PHP ye producida agora por The PHP Group y sirve como l'estándar de facto pa PHP, al nun haber una especificación formal. Publicáu cola PHP License, la Free Software Foundation considera esta llicencia como software llibre.[4]
PHP pue ser esplegáu na mayoría de los sirvidores web y en casi tolos sistemes operativos y plataformes ensin costu dalgunu. El llinguaxe PHP atópase instaláu en más de 20 millones de sitio web y nun millón de sirvidores. El númberu de sitios basaos en PHP viose amenorgáu progresivamente nos últimos años, cola apaición de nueves teunoloxíes como Node.JS, Golang, ASP.NET, etc. El sitiu web de Wikipedia ta desenvueltu en PHP.[6] Ye tamién el módulu Apache más popular ente los ordenadores qu'utilicen Apache como sirvidor web.
La gran paecencia que tien PHP colos llinguaxes más comunes de programación estructurada, como C y Perl, dexen a la mayoría de los programadores crear aplicaciones complexes con una curva d'aprendizaxe bien curtia. Tamién-yos dexa arreyar se con aplicaciones de conteníu dinámico ensin tener qu'aprender tou un nuevu grupu de funciones.
Anque tou nel so diseñu ta empobináu a facilitar la creación de sitio webs, ye posible crear aplicaciones con una interfaz gráfica pal usuariu, utilizando dalguna estensión como pue ser PHP-Qt, PHP-GTK,[7] WxPHP, WinBinder, Roadsend PHP, Phalanger, Phc o HiP Hop VM. Tamién puede ser usáu dende la llinia de comandos, de la mesma manera como Perl o Python pueden faelo; a esta versión de PHP se la llapada PHP-CLI (Command Line Interface).[8]
Cuando'l veceru fai un pidimientu al sirvidor por que lu unvie una páxina web, el sirvidor executa'l intérprete de PHP. Ésti procesa'l script solicitáu que va xenerar el conteníu de manera dinámica (por casu llogrando información d'una base de datos). La resultancia ye unviáu pol intérprete al sirvidor, quien de la mesma se lo unvia al veceru.
Por aciu estensiones ye tamién posible la xeneración de ficheros PDF,[9] Flash, según imáxenes en distintos formatos.
Dexa la conexón a distintos tipos de sirvidores de bases de datos tanto SQL como NoSQL tales como MySQL, PostgreSQL, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird, SQLite o MongoDB.[10]
PHP tamién tien la capacidá de ser executáu na mayoría de los sistemes operativos, tales como Unix (y de esi tipu, como Linux o Mac OS X) y Microsoft Windows, y puede interactuar colos sirvidores de web más populares yá que esiste en versión CGI, módulu p'Apache, y ISAPI.
PHP ye una alternativa a les teunoloxíes de Microsoft ASP y ASP.NET (qu'utiliza C# y Visual Basic .NET como llinguaxes), a ColdFusion de la empresa Adobe, a JSP/Java, CGI/Perl y a Node.js/Javascript. Anque la so creación y desenvolvimientu dar nel ámbitu de los sistemes llibres, so la llicencia GNU, esiste amás una redolada de desenvolvimientu integráu comercial llamáu Zend Studio. CodeGear (la división de llinguaxes de programación de Borland) sacó al mercáu una redolada de desenvolvimientu integráu pa PHP, denomináu 'Delphi for PHP. Tamién esisten siquier un par de módulos pa Eclís, unu de les redolaes más populares.[11]
Foi orixinalmente diseñáu en Perl, con base na escritura d'un grupu de CGI binarios escritos nel llinguaxe C pol programador danés-canadiense Rasmus Lerdorf nel añu 1994 p'amosar el so currículum vítae y guardar ciertos datos, como la cantidá de tráficu que la so páxina web recibía. El 8 de xunu de 1995 foi publicáu "Personal Home Page Tools" dempués de que Lerdorf combinar col so propiu Form Interpreter pa crear PHP/FI.
Dos programadores israelíes del Technion, Zeev Suraski y Andi Gutmans, reescribieron el analizador sintácticu (parser, n'inglés) en 1997 y crearon la base del PHP3, y camudaron el nome del llinguaxe por PHP: Hypertext Preprocessor.[3] Darréu empezaron esperimentaciones públiques de PHP3, y publicóse oficialmente en xunu de 1998. Pa 1999, Suraski y Gutmans reescribieron el códigu de PHP, y producieron lo que güei se conoz como motor Zend. Tamién fundaron Zend Technologies en Ramat Gan, Israel.[3]
En mayu del 2000, PHP 4 llanzar sol poder del motor Zend 1.0. El 13 de xunetu del 2007 anuncióse la suspensión del soporte y desenvolvimientu de la versión 4 de PHP,[12] y, a pesar de lo anunciao, lliberóse una nueva versión con meyores de seguridá, la 4.4.8, publicada'l 13 de xineru del 2008, y darréu la versión 4.4.9, publicada'l 7 d'agostu del 2008.[13] Según esta noticia,[14] dióse-y soporte a fallos críticos hasta'l 9 d'agostu del 2008.
El 13 de xunetu del 2004, llanzóse PHP 5, utilizando'l motor Zend Engine 2.0 (o Zend Engine 2).[3] Inclúi toles ventayes qu'aprove'l nuevu Zend Engine 2, como:
Significáu | |
---|---|
Coloráu | Versión antigua, ensin soporte |
Mariellu | Con soporte pa errores de seguridá |
Verde | Con soporte pa errores xenerales y de seguridá |
Azul | Llanzamientu futuru |
Rosa | Llanzamientu canceláu |
Versión | Fecha de llanzamientu | Fin de soporte | Notes |
---|---|---|---|
1.0 | 08-06-1995 | Llamada oficialmente "Personal Home Page Tools (PHP Tools)". Ye la primer versión n'usar el nome "PHP".[15] | |
2.0 | 01-11-1997 | Considerada polos sos creadores la "ferramienta más rápido y senciella" pa crear páxina web dinámiques.[15] | |
3.0 | 06-06-1998 | 20-10-2000 | Zeev Suraski y Andi Gutmans reescribieron la base pa esta versión.[15] |
4.0 | 22-05-2000 | 23-01-2001 | Añadióse un sistema de parsing de dos fases llamáu motor Zend.[16] |
4.1 | 10-12-2001 | 12-03-2002 | Introdúcense 'superglobales' ($_GET , $_POST , $_SESSION , etc.)[16]
|
4.2 | 22-04-2002 | 06-09-2002 | Evacúense register_globals por defectu. Datos recibíos pola rede nun son inxertaos nel espaciu de nomes global, cerrando posibles furacos de seguridá nes aplicaciones.[16]
|
4.3 | 27-12-2002 | 31-03-2005 | Introduzse CLI, y CGI.[16][17] |
4.4 | 11-07-2005 | 07-08-2008 | Añadir páxines man pa phpize y php-config .[16]
|
5.0 | 13-07-2004 | 05-09-2005 | Motor Zend II con un nuevu modelu d'oxetos.[18] |
5.1 | 24-11-2005 | 24-08-2006 | Meyores de rendimientu cola introducción de variables de compilador pal nuevu motor de PHP.[18] |
5.2 | 02-11-2006 | 06-01-2011 | Activida estensión de filtru per defectu. Soporte JSON nativu.[18] |
5.3 | 30-06-2009 | 14-08-2014[19] | Soporte pa espacios de nomes, enllaz estáticu en tiempu d'execución, etiqueta de saltu (GOTO llindada), Clausures natives, Soporte nativu p'archivos PHP (phar), recoyida de basura pa referencies circulares, soporte ameyoráu para Windows, sqlite3, mysqlnd como reemplazu a libmysql como biblioteca pa estensiones que funcionen con MySQL, fileinfo como reemplzado d'acorique_magic para meyor soporte MIME, estensión de Internacionalización, y etiqueta ereg obsoleta. |
5.4 | 01-03-2012 | 15-09-2015 | Soporte pa Trait y sintaxis embrivida de array. Elementos esaniciaos: register_globals , safe_mode , allow_call_time_pass_reference , session_register() , session_unregister() y session_is_registered() . Sirvidor web incorporáu.[20] Delles meyores a carauterístiques esistentes y al rendimientu, y requerimientos de memoria menores.
|
5.5 | 20-06-2013 | 20-06-2016 | Nuevos xeneradores pa bucles, empty() soporta espresiones. Piérdese'l soporte pa Windows XP y Windows Server 2003.[21]
|
5.6 | 20-08-2014 | 31-12-2018 | Constantes con espresiones esguilares, llistes d'argumentos de llargor variable y esponencial por aciu l'operador **.[22] |
6.x | El desenvolvimientu de PHP 6 foi retrasáu porque los desarrolladores decidieron que l'enfoque actual pa tratar cadenes Unicode nun ye correutu, y tán considerando formes alternes pa la siguiente versión.[23] Les meyores entamaes pa PHP 6 fueron añadíes nel so llugar en PHP 5.3.0 (Soporte pa espacios de nome, enllaz estáticu en tiempu d'execución, funciones lambda, clausures, goto) y 5.4.0 (traits, revinculación de clausura).
Abandonóse la versión 6 de PHP siendo la siguiente versión la 7.[24] | ||
7.0 | 03-11-2015[25] | 03-11-2018 | Meyores de rendimientu ,[26] declaración de tipos de torna en funciones[27] |
7.1 | 01-12-2016[28][29] | 01-12-2019 | Tipu de torna vacida,[30] Clase constante modificadores de visibilidá,[31] Tipos nullable,[32] iterable de tipu seudo,[33] Captura múltiples tipos d'esceiciones.[34] |
7.2 | 30-11-2017 | 30-11-2020 | Nuevu tipu de torna "object"[35], integración de Libsodium como una estensión del nucleo[36] |
Programa Hola mundu con PHP enfiñíu en códigu HTML:
<!DOCTYPE html>
<html lang="ast">
<head>
<meta charset="UTF-8" />
<title>Exemplu básicu PHP</title>
</head>
<body>
<?php
echo 'Hola mundu';
?>
</body>
</html>
L'intérprete de PHP solo executa'l códigu que s'atopa ente los sos allindiadores. Los allindiadores más comunes son <?php
p'abrir una seición PHP y ?>
pa cerrala. El propósitu d'estos allindiadores ye dixebrar el códigu PHP del restu de códigu, como por casu l'HTML.[37]
Les variables se prefijan col símbolu del dólar ($
) y nun ye necesariu indicar el so tipu. Les variables, a diferencia de les funciones, estremen ente mayúscules y minúscules. Les cadenes de calteres pueden ser encapsuladas tantu en dobles comines como en comines simples, anque nel casu de les primeres, pueden inxertase variables na cadena direutamente, ensin necesidá de concatenación.
Los comentarios pueden escribise bien con dos barras de primeres de la llinia, o con una almadina. Tamién dexa comentarios multi-llinia encapsulados en /* */
.
Tocantes a les pallabres clave, PHP comparte cola mayoría d'otros llinguaxes con sintaxis C les condiciones con if
, los bucles con for
y while
y les tornes de funciones. Como ye habitual nesti tipu de llinguaxes, les sentencies tienen d'acabar con puntu y coma (;
).
XAMPP ye un sirvidor independiente de plataforma, software llibre, que consiste principalmente na base de datos MySQL, el sirvidor Web Apache y los intérpretes pa llinguaxes de script: PHP y Perl. El nome provién del acrónimu de X (pa cualesquier de los distintos sistemes operativos), Apache, MySQL, PHP, Perl. El programa ta lliberáu so la llicencia GNU y actúa como un sirvidor Web llibre, bono d'usar y capaz d'interpretar páxines dinámiques. Anguaño XAMPP ta disponible pa Microsoft Windows, GNU/Linux, Solaris, y MacOS X. Ye un software "llixeru" que puede utilizase en cualesquier PC. Nun precisa munchos recursos.
LAMP presenta una funcionalidad asemeyada a XAMPP, pero enfocada en Linux, WAMP facer enfocáu en Windows, y MAMP para MacOS X. UwAmp ye bien idénticu a WAMP y destácase en que puede executase dende una memoria USB.
Utilízase PHP en millones de sitios; ente los más destacaos atópense Wikipedia.org, Facebook.com y Wordpress.com.