PHP
Artikulu hau hobetzeko lanean ari daAmaia Aristegilankidea. Hori dela eta, beharbada hutsuneren batzuk izango diraedukianedoformatuan. Mesedez, aldaketa handi bat egin baino lehen, eztabaida ezazu harenlankide orrianedoartikuluaren eztabaida orrian,erredakzioa koordinatzeko. |
PHP | |
---|---|
![]() | |
Diseinatzailea | Rasmus Lerdorf |
Garatzailea | The PHP Development Team, Zend Technologies |
Agerpena | 1995ko ekainaren 8a |
Kaleratze Egonkorra | 7.0.12 / 2016ko urriaren 13an |
Kaleratze Ezegonkorra | 7.1.0 Release Candidate 5 / 2016ko urriaren 27an |
Programazio lengoaia | C |
Sistema Eragilea | UNIX, Windows |
Lizentzia | PHP lizentzia |
Luzapena | .php,.phtml,.php3,.php4,.php5,.php7,.phps |
Webgunea | https://secure.php.net/ |
PHP(PHP:HypertextPreprocessor),Rasmus Lerdorf-ek 1994an sortutako interpretatutakoprogramazio-lengoaiabat da, batez ere webgune dinamikoak sortzeko erabili ohi dena.
Datu-basesistema ugarirekin funtzionatzeko aukera izatea etasistema eragilegehienetarako eskuragarri izatea dira beronen abantaila nagusiak.[1][2]
PHP interpretatzailea erabiliz exekutatzen da, hau da,web- zerbitzaribatean kodea exekutatzen da eta emaitza bat sortzen du,webguneanerakusteko edo datu-baseak kudeatzeko erabil daiteke.
Historia
[aldatu|aldatu iturburu kodea]1994an sortua,Daniarkanadarjatorriko Rasmus Lerdorf gazteak.C programazio lengoaianprogramaturikoCGIenbitartez bere webgunearen estatistikak jaso eta ikusteko. 1994eko ekainaren 8an argitaratu zuen "PersonalHomePage ", hau bere" Form Interpreter "PHP/FI, PHPren bigarren bertsioa gisa ezagutzen da.[3]
PHP 3 bertsioakobjektuei orientatutako programazioa(OOP) sartu zuen, etaZend Engineerabiliz hobetu zen. PHP 4, PHP 5 eta PHP 7 bertsioek hainbat segurtasun eta errendimendu hobekuntzak sartu zituzten.
Azkenengo bertsioa, PHP 8 (2020), JIT (Just-In-Time) kompilazioa sartu zuen, errendimendu hobea eta funtzionalitate berriekin.
Zazpi Goiti Bi Muga (1994)
[aldatu|aldatu iturburu kodea]Rasmus Lerdorfkanadarrak sortu zuen PHP lehenengo bertsio bat. Hau, alde batetik,estatistikaketa beste datu batzuk kudeatzeko asmoz sortu zen,web orridinamikoaksortzeko erreminta bat gisa funtzionatu zezan.
PHP/FI (1995)
[aldatu|aldatu iturburu kodea]Rasmus-ek PHP/FI (Personal Home Page/Forms Interpreter) bertsioa garatu zuen, non formularioak prozesatu eta datu-baseetan konektatu ahal izatea aurreikusita zen. Hala ere, hainbat garapenaren ondoren, "PHP/FI" izena "PHP" izan zen.
PHP 3.2.4.3 (1998)
[aldatu|aldatu iturburu kodea]Israeldarjatorriko bi programatzaile, Zeev Suraski eta Andi Gutmans 1997an berridatzi zuten analizatzaile sintaktikoa PHP3ren oinarria sortuz, eta gaur egun duen izena ezarriz. 1998an kaleratu zuten ofizialki bertsio hau.
1999an Suraski eta Gutmansek berridatzi zuten berriz kodea, eta Zend Engine (Zend motorra) gisa ezagutzen duguna sortuz. Eta Israelen Zend Technologies enpresa eratuz.
<!DOCTYPE html>
<html>
<head>
<title>PHP 3 Web Orria</title>
</head>
<body>
<?php
$izena="PHP 3 erabilzailea";
echo"<h1>Kaixo,$izena!</h1> ";
?>
</body>
</html>
PHP 4 (2000)
[aldatu|aldatu iturburu kodea]Zend Engine 1.0 teknologiaren menpe 2000. urteko maiatzean kaleratu zen 4. bertsioa. Atera den azkeneko eguneratzea 2006ko azaroan kaleratu zen, PHP 4.4.4. Gaur egun ere PHP 4rentzako segurtasun adabakiak kaleratzen jarraitzen dute.
<!DOCTYPE html>
<html>
<head>
<title>PHP 4 Web Orria</title>
</head>
<body>
<?php
$izena="PHP 4 erabilzailea";
echo"<h1>Kaixo,$izena!</h1> ";
?>
</body>
</html>
PHP 5 (2004)
[aldatu|aldatu iturburu kodea]Bertsio hau 2004ko uztailaren 13an atera zen, Zend Engine II erabiliz. Honako hobekuntzak hauek dakartza:
- Objektuei Zuzenduriko Programazioarentzako hobekuntza nabarmenak
- Errendimendu hobekuntzak
- MySQLdatu baseekiko komunikazio hobekuntza
- XMLsostengu hobetua (XPath,DOM...)
- Berezko sostenguaSQLitentzeko
- SimpleXML
- SOAPentzakosostengu integrala
- Datu errepikatzailea
- Errore-salbuespenak
<!DOCTYPE html>
<html>
<head>
<title>PHP 5 Web Orria</title>
</head>
<body>
<?php
$izena="PHP 5 erabilzailea";
echo"<h1>Kaixo,$izena!</h1> ";
?>
</body>
</html>
PHP 7 (2015)
[aldatu|aldatu iturburu kodea]Errendimendua eta segurtasuna hobetzen du azkenengo bertsio honek, 2015eko azaroaren 3an kaleratuta. Gainera funtzioen itzuleraren motak deklaratu daitezke.
<!DOCTYPE html>
<html>
<head>
<title>PHP 7 Web Orria</title>
</head>
<body>
<?php
$izena="PHP 7 erabilzailea";
echo"<h1>Kaixo,$izena!</h1> ";
?>
</body>
</html>
PHP 8 (2020)
[aldatu|aldatu iturburu kodea]PHPren azken bertsioa 8.0 izan zen. PHP 8ek hainbat funtzionalitate berri, errugabetasunak, eta segurtasun hobekuntzak hartzen ditu. JIT (Just-In-Time) kompilazioa ere sartu zen, programa interpretatu baino lehen kodea kompilatzen duena, honek errendimendu hobetzea ekartzen du.
<!DOCTYPE html>
<html>
<head>
<title>PHP 8 Web Orria</title>
</head>
<body>
<?php
$izena="PHP 8 erabilzailea";
echo"<h1>Kaixo,$izena!</h1> ";
?>
</body>
</html>
Bertsioaren arabera, honela geratzen da:
Bertsioa | Sortze Data | Amaiera Data | Oharrak |
---|---|---|---|
1.0 | 08-06-1995 | - | "PHP" izenarekin lehenengo bertsioa. |
2.0 | 01-11-1997 | - | Errazena eta azkarrena web orri dinamikoak sortzeko. |
3.0 | 06-06-1998 | 20-10-2000 | Zeev Suraski eta Andi Gutmans-en berridatziak. |
4.0 | 22-05-2000 | 23-01-2001 | Zend Motorreko bi faseko parseatze sistema gehitua. |
4.1 | 10-12-2001 | 12-03-2002 | 'Superglobal'ak (,$_GET, $_POST, $_SESSION, etab.) sartu. |
4.2 | 22-04-2002 | 06-09-2002 | register_globals desgaituak. |
4.3 | 27-12-2002 | 31-03-2005 | CLI eta CGI sarrera sartua. |
4.4 | 11-07-2005 | 07-08-2008 | phpize eta php-config orriak gehituak. |
5.0 | 13-07-2004 | 05-09-2005 | Zend Motorreko Bigarren Bertsioa (Zend II) berriarekin. |
5.1 | 24-11-2005 | 24-08-2006 | Errendimendu hobekuntzak. |
5.2 | 02-11-2006 | 06-01-2011 | JSON soportea, filtroak, eta hobekuntza gehiago. |
5.3 | 30-06-2009 | 14-08-2014 | Espazioen izenak, GOTO etiketa murriztua, natiboak PHP fitxategiak (phar), eta hobekuntza asko. |
5.4 | 01-03-2012 | 15-09-2015 | Trait eta arrayren sintaxi laburtua gehituak. |
5.5 | 20-06-2013 | 20-06-2016 | Berriztegi berriak eta soportea galdu Windows XP eta Windows Server 2003-an. |
5.6 | 20-08-2014 | 31-12-2018 |
|
7.0 | 03-11-2015 | 03-12-2018 | Errendimendu hobekuntzak, eta funtzioetan itzulpen moten deklarazioa. |
7.1 | 01-12-2016 | 01-12-2019 | Itzulpen mota hutsa, ikuspegi publikoak aldaketa, tipo hutsuneak, iteragarriaren pseudo-mota, eta salbuespen moten hainbat izatea. |
7.2 | 30-11-2017 | 30-11-2020 | "objektu" itzulpen mota berria, Libsodium integratzea nukleoaren luzapen gisa. |
7.3 | 6-12-2018 | 6-12-2021 | Nowdoc eta Heredoc-entzat sintaxi malgua, erreferentzia eta zerrenden deskonposaketa, list() erabiliz, PCRE2-entzat, hrtime() funtzioa. |
7.4 | 28-11-2019 | 28-11-2022 | PHP 7.4aren bizitzaren amaiera azaroaren 28an. |
8.0 | 26-11-2020 | 26-11-2023 | Ezaugarri eta errendimendu hobekuntza berriak. |
8.1 | 25-11-2021 | 25-11-2024 | "readonly" propietateak, "Enums", "Fiber" eta sintaxi berriak. |
8.2 | 08-12-2022 | 08-12-2025 | Propietate dinamikoak sortzea desgaitua eta AllowDynamicProperties atributua gehitua. |
Ikuspegi Orokorra
[aldatu|aldatu iturburu kodea]PHP doan erabil daiteke gehienetako web zerbitzarietan eta sistema eragiletan, sistema eragile guztietan eta plataformetan. PHP hizkuntzaren interpretatzailea 20 milioi baino gehiagoko webguneetan eta milioi bat zerbitzuetan instalatuta dago. PHPrik oinarritutako zerbitzuak azken teknologien bidez aldatzea, diru-kostua erabilgarri egin behar da (bereziki, hardware eta errendimendu ikuspegiarekin). Horregatik, PHP oinarritutako webguneen zenbakia azken urteotan gutxitzen ari da,Node.js,Golang,ASP.NET,etab. bezalako teknologiak agertzen direnaren ondorioz.
Gaur egun PHP-ren garapena ikus dezakegu, eskuragarri dauden liburutegi berriak, matrizeen erabilera, zenbaki osoen kudeaketa, Base64 erabiliz kriptografia tratamendua,Web scraping,weben indexazioa, datuen prestatzea, Makrodatuak, datu multzoak, datuen segimendua, proposamen dimentsionalen multzoa. Ikuspegi orokorrak ikusi bezala, hizkuntza honen ikuspegi orokorrak hainbat arlo eta maila konplexuetan jorratzen du, eta web garapenaren zorrotzagoa baino ez.
PHP eta I.A. (Inteligentzia Artifiziala)
[aldatu|aldatu iturburu kodea]PHPk IA-ren alorrean sartu daitezkeen xyz domeinuen agerpenaren atzean, non PHP-aren zerbitzuak edukien katzea helburu duen (besteren zerbitzuak kontsumitzeko orientazioarekin, esaterako, datuak behar duten zerbitzuak). Hainbat garapenek PHP-ri ongi etorri ematen diote, emaitzak lortzeko fidantza sentimenduarekin (I.A.-ra zuzenean zuzendutako hizkuntza izan gabe). Hala ere, hainbat domeinuetan jasotzen ari den marketina, teknologia berrietan hezi diren gazteetan oinarritzen da.
PHPren Erabilera
[aldatu|aldatu iturburu kodea]Wikipediaren webgunea PHP erabiliz garatu da. Era berean, Apache modulu gehien erabiliena da Apache erabiltzen duten ordenagailuetan.
PHPk beste programazio-lengoaia estrukturatu arruntekin, hainbat hizkuntza bezalakoak (C etaPerl,adibidez), askotariko programatzaileei aholkularitza motzarekin aplikazio konplexuak sortzea ahalbidetzen die. Hau ere esan behar da, aplikazio edukien dinamikoak sortzea ikasi behar izan gabe.
Diseinu osoan webguneak sortzea helburu duen hainbat kasutan, interfaze grafikoaren aplikazioak ere sortu daitezke, PHP-Qt, PHP-GTK, WxPHP, WinBinder, Roadsend PHP, Phalanger, Phc edo HiP Hop VM bezalako hedapenak erabiliz. PHP ahalbidetzen du lerro deituen interfaze bezala ere erabiltzea, Perl edo Python bezala; hau da, PHP-CLI (Command Line Interface) deritzanari.
Bezeroak orri web bat eskatzeko eskaera egiten duenean, zerbitzariak PHP interpretatzailea exekutatzen du. Hau prozesatuko du eskatutako scripta, edukia dinamikoki sortuz (adibidez, datu base batetik informazioa jasotzea). Emaitza interpretatzaileak zerbitzarira bidaltzen du, eta hau, berehala, bezeroari bidaltzen dio.
Luzapenekin,PDF,Flash eta hainbat formatuetako irudiak sortzeko aukera ere dago.
SQLeta NoSQL motako datu-baseen zerbitzari desberdinaketan konektatzeko aukera ere ematen du, hainbatena: MySQL,PostgreSQL,Oracle,ODBC, DB2,Microsoft SQL Server,Firebird, SQLite edoMongoDB.
PHP ere erabili daiteke gainerako sistema eragiletan,Unix(LinuxedoMac OS X), etaMicrosoft Windowsbezalakoetan, etainterfazmoduan dauden web zerbitzarrekin interaktiboa izateko, CGI bertsioa, Apache modulua edo ISAPI dela-eta.
PHP, Microsoft ASP eta ASP.NET (nonC#etaVisual Basic.NET hizkuntzak erabiliz),AdobeenpresetakoColdFusion,JSP/Java,CGI/Perl eta Node.js/Javascriptteknologien alternatiba da. GNU lizentziaren azpian sortutako sistema libreetan sortu eta garatu zen, baina Zend Studio izeneko enbargu kutsatua dagoen garapen inguruko bestelako bat ere badago.CodeGear(Borland-eko programazio-hizkuntzen banaketa) zendutako komertziala da, 'Delphi for PHP' izenekoa. Eclipse-en módulu pare bat ere badago, ambiente ezagunenetako batena.
Ezaugarri Nagusiak
[aldatu|aldatu iturburu kodea]Web dinamikoaK
[aldatu|aldatu iturburu kodea]PHPren bidez, webguneak dinamikoak izan daitezke. Erabiltzaileek interaktiboki erantzuten dezakete, eta orriak eguneratu daitezke beren ekintzen arabera.
Datu-baseak kudeatzea
[aldatu|aldatu iturburu kodea]PHP, hainbat datu base-sistema erabiliz, datu baseetako kontsulta egiten, informazioa eskuratzen eta kudeatzen du.
Objektu orientatuak
[aldatu|aldatu iturburu kodea]PHP objektu-orientoitutako programazioa (OOP) onartzen du, modularitatea eta hierarkia bultzatuz.
Session-ak etaCookie-ak
[aldatu|aldatu iturburu kodea]PHPren bidez, erabiltzaileek webguneetan mantentzen dituzten datuak kudeatzen dira, session eta cookie mekanismoen bidez.
Erabilpena mundu osoan
[aldatu|aldatu iturburu kodea]PHP erabilpen handia dauka mundu osoan zehar, eta haren inguruko komunitatea handia eta aktiboa da. PHP 8 bertsioa azkenengoakoa da, eta hainbat hobekuntza eta segurtasun igoerak ditu.
Sintaxia
[aldatu|aldatu iturburu kodea]Web Orri Bat Sortzea
[aldatu|aldatu iturburu kodea]PHPren bidez,HTMLkodearen barruan integratuz, web orri bat dinamiko eta interaktiboa sortu daiteke. Adibidez:
<!DOCTYPE html>
<html>
<head>
<title>PHP Web Orria</title>
</head>
<body>
<?php
$izena="PHP erabilzailea";
echo"<h1>Kaixo,$izena!</h1> ";
?>
</body>
</html>
Datu baseak kudeatzea
[aldatu|aldatu iturburu kodea]PHP-ekMySQLdatu basea erabiliz, datuak kontsultatu eta kudeatu ditzake. Adibidez:
<?php
$server="localhost";
$erabiltzailea="erabiltzailea";
$pasahitza="pasahitza";
$db="datu_basea";
$conn=newmysqli($server,$erabiltzailea,$pasahitza,$db);
if($conn->connect_error){
die("Ezin izan da datu-basearekin konexioa egin:".$conn->connect_error);
}
$sql="SELECT izena, abizena FROM erabiltzaileak";
$result=$conn->query($sql);
if($result->num_rows>0){
while($row=$result->fetch_assoc()){
echo"Izena:".$row["izena"]."- Abizena:".$row["abizena"]."<br>";
}
}else{
echo"Ez dago emaitzarik";
}
$conn->close();
?>
Erreferentziak
[aldatu|aldatu iturburu kodea]- ↑Julio, Gorka.Software Librea - WEB GUNE DINAMIKOEN GARAPENA: PHP eta MySQL.Asmoz Fundazioa eta Eusko Jaurlaritza.
- ↑«Web dinamikoen garapena PHP eta MYSQL erabiliz:: ikasi:: Udako Euskal Unibertsitatea»ueu.eus(Noiz kontsultatua: 2022-10-09).
- ↑Rasmus Lerdorf, PHP lengoaiaren sortzailea | Consumer.2008-08-13(Noiz kontsultatua: 2022-10-09).
Bibliografia
[aldatu|aldatu iturburu kodea]- Ford, Paul (June 11, 2015)."What is Code?". Bloomberg Businessweek. "What's the Absolute Minimum I Must Know About PHP?