PHP
PHP | |||
---|---|---|---|
Tilblivelse | 8. juni 1995[1][2] | ||
Paradigme | 5 paradigmer Multi-paradigme: Imperativ programmering, funksjonell programmering, objektorientert programmering, prosedyrisk programmering, selvmodifiserende programmering | ||
Designet av | Rasmus Lerdorf | ||
Utviklet av | Rasmus Lerdorf, Andi Gutmans, PHP Group, Zend Technologies, Zeev Suraski | ||
Siste versjon(er) | 8.3.13 / 24. okt. 2024 | ||
Versjon(er) i utvikling | 14 versjoner 7.4.0 beta 1, 7.4.0 beta 2, 7.4.0 beta 4, 8.1.0 Beta 1, 8.1.0 Beta 2, 8.1.0 Beta 3, 8.2.0 Beta 1, 8.2.0 Beta 2, 8.2.0 Beta 3, 8.3.0 Beta 1, 8.3.0 Beta 2, 8.3.0 Beta 3, 8.4.0 Beta 3, 8.4.0 Beta 4, 8.4.0 Beta 5 | ||
Typetildeling | svak, dynamisk, gradvis | ||
Filendelse(r) | .php, .phar | ||
OS | Linux, Mac OS X, Windows, med flere[3] | ||
Lisens | PHP-Lisens | ||
Implementert i | |||
C | |||
Påvirket av | |||
C++, Perl, C, Java, Tcl, HTML, JavaScript |
PHP («PHP: Hypertext Preprocessor») er et dynamisk, tolket og løst typet skriptspråk hovedsakelig brukt for å utvikle dynamiske nettsider. PHPs syntaks ligner C og Perl. Den vanligste implementasjonen av PHP er en fri og åpen versjon skrevet i C og distribuert av The PHP Group via php.net og SourceForge.
PHP distribueres under PHP-Lisensen.
Historie
[rediger | rediger kilde]I 1995 skrev Rasmus Lerdorf et sett skripter i Perl for å holde øye med besøksstatistikken på sin CV som lå tilgjengelig på Internett. Senere skrev han om pakken i C, og PHP 1 ble utgitt det samme året under åpen kildekode-lisensen GPL (PHP1 finnes i PHPs museum). Pakken ble kalt Personal Homepage Tools, og en liten gruppe samlet seg om prosjektet.
Da PHP 2 – kalt PHP/FI (Form Interpreter) – kom, ble en del nytt lagt til, som f.eks. støtte for kommunikasjon mot databaser. Språket lignet nå litt på Perl, men med en mindre konsistent og mer begrenset syntaks og mindre funksjonalitet. Senere sluttet Andi Gutmans og Zeev Suraski seg til prosjektet og skrev om PHP fra bunnen av. Resultatet var PHP 3, som bl.a. var mye raskere enn de tidligere versjonene. Samtidig endret man hva PHP sto for, til PHP: Hypertext Preprocessor, et rekursivt akronym.
PHP opparbeidet seg etter hvert en stor brukerbase, og ble snart ansett som en standard installasjon på flere av vevtjenerne på Internett. Så kom PHP 4 med den nye Zend Engine, som ligger til grunn for selve språket.
Versjoner av PHP
[rediger | rediger kilde]Første utgave av PHP 4 kom i mai 2000[4], og var under utvikling fram til versjon 4.4.9 ble sluppet 7. august 2008. Denne versjonen markerte slutten på PHP 4s livssyklus.[5][6]
PHP 5 hadde sin første stabile versjon 13. juli 2004, og introduserte bedre støtte for objektorientert programmering og SimpleXML for enklere manipulering av XML. PHP 5.1 introduserte et nytt grensesnitt for generisk kommunikasjon med databaser for å gjøre det enklere å kunne støtte flere forskjellige databasesystemer. PHP 5.2 introduserte betydelige forbedringer innen minnehåndteringen som forbedret ytelse og ressursbruk i forhold til eldre versjoner.
PHP 7.0.0 ble lansert 1. desember 2015.[7]
Bruksområder
[rediger | rediger kilde]Selv om det finnes grensesnitt mot forskjellige løsninger for grafiske brukergrensesnitt, brukes PHP som oftest til utvikling av det underliggende på dynamiske nettsider, den delen av en applikasjon som behandler informasjonen på tjeneren og sender dem til klienten.
PHP har støtte for mange forskjellige databasesystemer, manipulasjon av bilder, jobbe med filer, datautvekslingsformater som f.eks JSON og XML, behandling av tekst, PDF og så videre. Eksempelvis MediaWiki, som er applikasjonen som Wikipedia kjører på, er utviklet i PHP.
Kombinasjonen Linux, Apache, MySQL, PHP kalles ofte LAMP, og har blitt et utbredt uttrykk for denne samlingen av fri programvare som til sammen er alt som behøves for å drive et websted (en vevtjener).
Syntaks
[rediger | rediger kilde]PHP tolker kun kode som er i mellom <?php og ?> eller kortversjonen <? ?>, selv om kortversjonen ikke er anbefalt å bruke.[8]
Eksempler
[rediger | rediger kilde]<?php
echo "Hello world!";
?>
Eller
<?php
print "Hello world!";
?>
Både "print" og "echo" er innebygde funksjoner (language constructs) for å skrive ut data til standard output. Begge gjør akkurat det samme, men før PHP4 var "echo" raskere.
If / Else
[rediger | rediger kilde]<?php
$var = true;
if($var){
// $var er definert
}
else{
// $var er ikke definert
}
$var_status = ($var ? 'variabelen finnes' : 'variabelen er ikke definert');
echo $var_status; // variabelen finnes
$var = 'Hello World';
if($var == 'Hello World'){
// var er definert som Hello World
}
else if($var == 'Goodbye'){
// var er definert som Goodbye
}
else{
// var har en annen verdi eller er ikke definert
}
?>
Switch
[rediger | rediger kilde]<?php
$num = 5;
switch($num){
case '5':
// $num er 5
break;
default:
// $num er ikke definert eller har en annen verdi enn 5
}
?>
Tilfeldig
[rediger | rediger kilde]<?php
$var = mt_rand(1,9); // Velger et tilfeldig tall mellom 1 og 9.
echo $var;
?>
<?php
function navn($navn){
return "Hei, jeg heter ".$navn;
}
echo navn("Ola Nordmann"); // Denne vil kjøre funksjonen navn(), du vil få ut "Hei, jeg heter Ola Nordmann" ettersom det er lagt inn i funksjonen.
?>
<?php
class Person
{
public $first;
public $last;
public function __construct($f,$l)
{
$this->first = $f;
$this->last = $l;
}
public function greeting()
{
return "Hei, jeg heter {$this->first} {$this->last}.";
}
public function staticGreeting($first, $last)
{
return "Hei, jeg heter $first $last.";
}
}
$him = new Person('John','Smith');
$her = new Person('Sally','Davis');
echo $him->greeting(); // sender ut "Hei, jeg heter John Smith."
echo '<br />';
echo $her->greeting(); // sender ut "Hei, jeg heter Sally Davis."
echo '<br />';
echo Person::staticGreeting('John','Smith'); // sender ut "Hei, jeg heter John Smith."
?>
Referanser
[rediger | rediger kilde]- ^ «PHP: History of PHP - Manual», besøkt 25. august 2016[Hentet fra Wikidata]
- ^ «Google Groups», besøkt 11. desember 2018[Hentet fra Wikidata]
- ^ Downloads - php.net
- ^ PHP 4 ChangeLog
- ^ News Archive – 2007
- ^ PHP 4 ChangeLog
- ^ PHP 7.0.0 Released
- ^ PHP tags
Eksterne lenker
[rediger | rediger kilde]- (en) Offisielt nettsted
- (en) Mate-URL
- (en) PHP – kategori av bilder, video eller lyd på Commons
- PHPs museum
- Codepad.org Arkivert 19. januar 2010 hos Wayback Machine. – Online tolker som gjør det mulig å teste PHP-kode i nettleseren