PHP

Från Wikipedia
Hoppa till: navigering, sök

PHP, rekursiv akronym för PHP: Hypertext Preprocessor, är ett populärt skriptspråk som främst körs på webbservrar för att driva internetsajter med dynamiskt innehåll (det vill säga innehåll som genereras från till exempel databas eller besökarens formulärdata). Det finns dock också en CLI-applikation för PHP som gör att skript kan köras direkt, utan webbserver.

Skriptspråket är populärt och jämförs ofta med Active Server Pages (ASP) från Microsoft, eller Java Server Pages (JSP) från Sun Microsystems.

Historia[redigera | redigera wikitext]

1995 skrev Rasmus Lerdorf en samling Perl-skript som han kallade PHP/FI (Personal Home Page / Forms Interpreter). Så småningom gjorde han om det med hjälp av programspråket C.

Andi Gutmans och Zeev Suraski hittade under sina universitetsstudier verktyget PHP/FI och skrev om det helt. År 1998 hade de lanserat den färdiga versionen av PHP 3.0.

Version 4 släpptes i maj 2000, med stöd för objektorienterad programmering. Den 13 juli 2007 meddelades att utvecklingen av PHP 4 skulle upphöra den 31 december 2007, men att man kommer släppa säkerhetsuppdateringar för PHP 4 fram till och med den 8 augusti 2008. Den 7 augusti 2008 släpptes version 4.4.9, som därmed blev den sista versionen av PHP 4.

Version 5 släpptes den 13 juli 2004, med förbättrat stöd för objektorientering. Senaste uppdateringen är 5.5.5 (17 oktober 2013).

Syntax[redigera | redigera wikitext]

PHP:s huvudsakliga uppgift är att fungera som ett filter. Källkoden tolkas av en interpretator kallad Zend Engine, och omvandlas till ett slutresultat i form av en textström som skrivs ut. Resultatet påverkas av indata som programmet får vid körning, oftast i form av instruktioner och text. Ofta används kommunikation med databaser för att presentera lagrad information. Mottagaren är oftast en webbläsare.

Här är ett klassiskt Hello World-program:

<?php
       echo 'Hello, World!'; 
?>

PHP tolkar bara programkod som är skriven inom sina avgränsare, vanligtvis <?php ?>. Om servern är konfigurerad med short_open_tag = 1 (inte standard) kan avgränsarna skrivas <? respektive ?>. Allt som skrivs utanför dessa tolkas som vanlig text och skrivs ut direkt utan vidare behandling.[1] Anledning till detta är att man på ett enkelt sätt ska kunna bädda in PHP-kod i ett HTML-dokument, vilket är ett av de huvudområden där PHP används.[2]

Här är ett exempel på hur man kan blanda PHP med HTML:

<?php $page_title = 'sidans titel'; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
 "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
 <title><?php echo $page_title; ?></title>
 </head>
 <body>
 <p>Hello</p>
 </body>
</html>

Variabler använder prefix i form av en dollarsymbol och dess datatyp behöver inte specificeras i förväg. Till skillnad från funktioner och klasser, är variabler skiftlägeskänsliga.[3]

Det finns tre typer av syntax för kommentarer[4]:

  • /* */ som tillåter större stycken
  • // samt
  • # vilka används för enstaka rader.

Både enkla och dubbla citationstecken används för att omsluta strängvärden.

Om dubbla citationstecken används kan variabler läggas in enligt följande, till skillnad från enkla citationstecken.

$variabel = "två";
 
echo "ett + ett = $variabel"; // Skriver ut: ett + ett = två
 
echo 'ett + ett = $variabel'; // Skriver ut: ett + ett = $variabel


Exempel på en funktion

/**
 * Deklarerar funktionen
 */
function exempel()
{
    echo "Detta är ett exempel på en funktion och när jag vill anropa min funktion så syns denna text.";
}
 
// Anropar funktionen
exempel(); // Funktionen skriver ut texten ovan. Och jag behöver ej ändra där exempel(); ligger ifall jag vill ha en annan text.

Källor[redigera | redigera wikitext]

  1. ^ PHP.net – PHP Manual: Basic syntax (engelska)
  2. ^ PHP.net – What can PHP do? (engelska)
  3. ^ PHP.net – PHP Manual: Variables (engelska)
  4. ^ PHP.net – PHP Manual: Comments (engelska)

Externa länkar[redigera | redigera wikitext]

Wikibooks-logo.svg
Wikibooks har böcker relaterade till PHP.
  • PHP.net (engelska) – Officiell webbsida