PHP är skriptspråk som används för utveckling av dynamiskt webbinnehåll och som körs på webbservar. På grund av sin syntax som ärvdes från programspråk C och sin enkelhet blev det ganska populärt. Under tiden blev språket utvidgat och fick möjlighet för objektorienterad programmering. Det ger möjlighet för procedur programmering, men möjliggör samtidigt att klasser och andra koncept som gäller objektorienterad programmering används.
Det första verktyget med namnet PHP/FI skrevs 1995 av Rasmus Lerdorf för hans egna behov och det gällde grupp av verktyg för personlig presentation (på engelska Personal Home Page Tools), där akronym PHP kommer från. Den versionen hade endast några gemensamma egenskaper med nuvarande PHP. Strax efter versionen PHP/FI 2.0 lanserades officiellt 1997, ersättes den av PHP 3.0. Den PHP versionen är versionen som mycket liknar nuvarande PHP versioner. Den utvecklades av israelska programmerare Zeev Suraski och Endi Gutmans och skrev om det helt och i samarbete med Lerdorf lanserade de PHP 3.0 som officiell efterträdare till språket PHP/FI. Den versionen präglades av mer konsistens och möjlighet för objektorienterad programmering, och huvuddrag var dess utvidgning.
PHP 3.0 lanserades oficiellt i juni 1998, och efter nio månader av test förändrades namn till PHP utan tillägg “FI” och betydelse av akronym förändrades och nu står det för “PHP: Hypertext Preprocessor”.
Under vinter av 1998 började Zeev och Gutmans skriva PHP från början, de försökte fixa kärna så att den bättre kan arbeta med större applikationer och förbättra modularitet. De nämnde nya kärnan Zend engine, enligt delar av deras namn Zeev och Andi, och senare grundade de också Zend Technologies i Ramat Gan, Israel, som övervakar PHP förbättring. Nya kärnan slutfördes på ett tillfredställande sätt och lanserades i mitten av 1999, och nya PHP versionen 4.0, med ny kärna lanserades officiellt i maj 2000. Förutom bättre resultater inkluderade nya versionen bättre cache-tekniken för standard utdata, sessioner, bättre stöd för olika webbservar, säkrare överföring av användardata och några nya kontrollstrukturer.
Versionen 5.0 kom ut i juli 2004, efter lång utveckling och några testversioner. Den använder kärnan av Zend engine 2.0 med ny objektmodell och många nya möjligheter. Många förändringar som gäller objektrelaterad programmering finns i den versionen.
PHP kan användas för programmering av konsolapplikationer och grafiskt användargränssnitt (bibliotek PHP-GTK), och det används först och främst för programmering av dynamiska webbsidor på Internet.
Idag används PHP av några hundra tusen program och några miljoner webbplatser, bland annat några av de mest besökta webbplatserna i världen, som Facebook, Wikipedia, Yahoo, YouTube och Flickr.
Program som skrivs i PHP behöver inte översättning (att använda kompilator), utan det interpreteras vid varje utförande. PHP interpretator kan utföras enligt PHP CGI princip, dvs. interpretator ska finnas som extern applikation, som anropas att utföra viss skript varje gång någon användare kräver det och den kan installeras också som webbtjänstens modul. Den andra varianten används idag mest, eftersom den möjliggör att hastighet vid utförande ökas – på det sättet är interpretator alltid laddat inom minne så man inte behöver anropa externa program.
Vanligt scenario vid utförande av PHP skripter är följande:
klient (internetanvändare som använder någon webbläsare) kräver PHP sidan från servern, servern vidarebefordrar krav till webbtjänsten (program webbserver på servern), webb-servern erkänner att PHP databas krävs, den skickar inte dess innehåll till klienten, utan utföra den som program med hjälp av PHP modul, utdata av program (standard utdata ) skickas till klienten som resultat av krav, klienten erkänner resultattyp (HTML kod, bild, PDF-innehåll, arkiv osv.), resultaten visas till klienten på motsvarande sätt. På sistone uppnådde PHP en högre nivå. Det gäller paket (php ramverk) som används som verktyg för snabbare och säkrare utveckling av webbapplikationer. Deras mål är att färdiga verktyg från en teknologi blev sammansatt inom praktiskt ramverk så paket som skapades på det sättet används vidare som ett verktyg. På det sättet kan programmerare ha till förfogande grundläggande teknologiska funktioner de använder och de kan bara ägna sig åt logik av applikationen som de skapar, problem med organisation av filer, objekt klassifikation och säkerhet.
Här är några av kändare och populärare PHP paket: Laravel, Phalcon, Symfony2, Codelgniter, Yii, Aura, Zend Framework 1 och 2, Cake PHP, Kohana och andra.