Aktuālā situācija: PHP2Shell. Divas kritiskas PHP ievainojamības (CVSS 9.2) ļauj izpildīt ļaunprātīgu kodu bez pieteikšanās. Ielāpi kopš 21.10.2026.Kas jādara tagad →

PHP vēsture: no 1994. gada līdz mūsdienām

No privāta rīka CV lapai līdz daudzu CMS un veikalu pamatam: svarīgākie PHP vēstures posmi ar pārbaudītiem gadskaitļiem.

Aktuāls uz 5 min lasīšanas laiksPHP zināšanas

Īsi: PHP vēsture sākas 1994. gadā ar Rasmus Lerdorf, kurš C valodā rakstītās CGI programmas savai privātajai vietnei nosauca par „Personal Home Page Tools“. 1998. gadā iznāca PHP 3, 2000. gadā PHP 4 ar Zend Engine, 2004. gadā PHP 5, 2015. gadā PHP 7 un 2020. gadā PHP 8. Šodien katru gadu novembrī iznāk jauna versija, ko uztur četrus gadus.

Kā radās PHP: Personal Home Page Tools (no 1994. līdz 1997. gadam)

Saskaņā ar PHP rokasgrāmatu Rasmus Lerdorf 1994. gadā uzrakstīja vairākas CGI programmas C valodā. Sākotnēji tām bija tikai jāfiksē viņa tiešsaistes CV apmeklējumi. Šo kopumu viņš nosauca par „Personal Home Page Tools“ un 1995. gada jūnijā publicēja pirmkodu. Tā rīkus varēja izmantot un uzlabot arī citi.

  1. gada septembrī Lerdorf paplašināja rīkus un uz laiku nosauca tos par „FI“ (Forms Interpreter). 1995. gada oktobrī sekoja pilnīga pārstrāde, atkal ar nosaukumu PHP. 1996. gada aprīlī viņš abus nosaukumus apvienoja par PHP/FI. Šī versija 1996. gada jūnijā ieguva versijas 2.0 statusu un 1997. gada novembrī beidza beta fāzi.

Jau šis agrīnais posms ietekmē PHP līdz šim: valoda, kas radās no praktiskas vajadzības, ātri sniedz rezultātus un ko attīsta atvērta kopiena.

PHP 3 un Zend Engine (no 1997. līdz 2004. gadam)

  1. gadā Andi Gutmans un Zeev Suraski no Telavivas sāka parsētāju, tas ir, daļu, kas nolasa un sadala pirmkodu, rakstīt no jauna. Kopā ar Lerdorf tā radās jauna valoda, ko sauca tikai „PHP“. Nosaukums kļuva par rekursīvu akronīmu „PHP: Hypertext Preprocessor“. PHP 3.0 iznāca 1998. gada jūnijā kā PHP/FI 2.0 pēctecis. Svarīgākais bija laba paplašināmība un pirmais atbalsts objektorientētajai programmēšanai.

Pēc tam Gutmans un Suraski kodolu pārrakstīja vēlreiz. Rezultāts bija Zend Engine, nosaukts pēc viņu vārdiem Zeev un Andi. To iepazīstināja 1999. gada vidū. PHP 4.0 iznāca 2000. gada maijā un atnesa labāku veiktspēju, HTTP sesijas un izvades buferizāciju.

  1. gada jūlijā sekoja PHP 5 ar Zend Engine 2.0 un jaunu objektu modeli. 5. sērija ilgi palika lietošanā un ar katru apakšversiju auga. Ar PHP 5.3.3 kā atsevišķs darbības režīms nāca klāt FastCGI Process Manager (FPM), ar PHP 5.5.0 baitkoda kešatmiņa OPcache kļuva par komplekta daļu.

Atcelts PHP 6 un lēciens uz PHP 7 (no 2005. līdz 2019. gadam)

PHP 6 bija jānes dziļš Unicode atbalsts, tas ir, vienota visu rakstzīmju apstrāde. Saskaņā ar rokasgrāmatu šis darbs tika pārtraukts. Dažas plānotās funkcijas pārcēlās uz PHP 5.3 (nosaukumvietas) un PHP 5.4 (traits un īsais masīvu pieraksts []). Nākamā lielā versija tāpēc ieguva numuru 7.

PHP 7.0 iznāca 2015. gada 3. decembrī ar Zend Engine 3.0. Pamatā bija projekts PHPNG, kodola pārstrāde Dmitry Stogov vadībā. Attiecīgajā RFC, formālā izmaiņu priekšlikumā, bija minēts veiktspējas pieaugums no 20 līdz 110 procentiem reālās lietojumprogrammās, piemēram, WordPress un Drupal. Jaunumi bija, piemēram, null apvienošanas operators ?? un anonīmās klases.

<?php
// Kopš PHP 7.0: noklusējuma vērtība bez isset() ķēdes
$sprache = $_GET['lang'] ?? 'de';
  1. sērija beidzās ar PHP 7.4. Tā pēdējā versija 7.4.33 iznāca 2022. gada 3. novembrī; saskaņā ar php.net atbalsts beidzās 2022. gada 28. novembrī.

PHP 8 un ikgadējais ritms (no 2020. gada līdz mūsdienām)

PHP 8.0 iznāca 2020. gada 26. novembrī ar nosauktiem argumentiem, apvienojuma tipiem (union types), atribūtiem, nullsafe operatoru ?->, match izteiksmēm un JIT kompilatoru. Kopš tā laika katru gadu seko jauna apakšversija. Ko katra versija atnesusi, apraksta pārskats PHP 8.0 līdz 8.5.

Versija Pirmā publicēšana Galvenie punkti
PHP 3.0 1998. gada jūnijs jauns parsētājs, nosaukums „PHP: Hypertext Preprocessor“
PHP 4.0 2000. gada maijs Zend Engine, sesijas, izvades buferizācija
PHP 5.0 2004. gada jūlijs Zend Engine 2.0, jauns objektu modelis
PHP 7.0 2015. gada 3. decembris Zend Engine 3.0, ievērojami ātrāks
PHP 8.0 2020. gada 26. novembris JIT, atribūti, apvienojuma tipi
PHP 8.1 2021. gada 25. novembris enums, fibers, readonly īpašības
PHP 8.2 2022. gada 8. decembris readonly klases, DNF tipi
PHP 8.3 2023. gada 23. novembris tipizētas klases konstantes
PHP 8.4 2024. gada 21. novembris property hooks, asimetriska redzamība
PHP 8.5 2025. gada 20. novembris pipe operators, URI paplašinājums
  1. gadā PHP projekts nobalsoja par jaunu izlaidumu ciklu. Kopš tā laika katrs versiju zars saņem divus gadus aktīvu atbalstu un divus gadus drošības labojumus, katrreiz līdz 31. decembrim. Noteikumus detalizēti skatiet sadaļā PHP versijas un izlaidumu cikls.

Ko vēsture šodien nozīmē drošībai

Garā vēsture ir stiprā puse, jo PHP ir stabils un labi dokumentēts. Taču tas ir arī slogs: daudzos serveros darbojas versijas, kas uzstādītas pirms vairākiem gadiem un nekad nav nomainītas. PHP 5.6 bez oficiāla atbalsta ir kopš 2018. gada 31. decembra, PHP 8.0 kopš 2023. gada 26. novembra, PHP 8.1 kopš 2025. gada 31. decembra.

PHP2Shell to ir padarījis redzamu. Saskaņā ar speciālistu presi skartas ir gandrīz visas versijas līdz pat PHP 5.4. Oficiāli labojumi kopš 2026. gada 21. oktobra ir tikai zariem no 8.2 līdz 8.5; versijām 7.4, 8.0 un 8.1 ir tikai minimāli pirmkoda backport labojumi. Kas uztur vecākas versijas, sekas atradīs ceļvedī PHP End of Life: novecojušu versiju riski.

Padoms

Pierakstiet katram serverim PHP versiju un datumu, kad beidzas tās atbalsts. Tā pārsteigums kļūst par plānojamu termiņu.

Kā PHP SOS palīdz konkrēti?

  • Atrast mantojumu: Mēs apzinām, kuras PHP paaudzes jūsu serveros vēl darbojas, arī aizmirstajās sistēmās.
  • Novērtēt risku: Mēs parādām, kuras versijas saņem oficiālus atjauninājumus un kur paliek tikai pagaidu risinājumi.
  • Plānot migrāciju: Ar PHP 8.1 un vecāku versiju migrāciju mēs lietojumprogrammas pārceļam uz atbalstītu versiju, pirms pārejas to pārbaudot.
  • Dokumentēt: Jūs saņemat pārskatu ar versijām un atbalsta beigu datumiem savam plānojumam.

Biežāk uzdotie jautājumi

Kas izgudroja PHP?

PHP aizsākās ar Rasmus Lerdorf. 1994. gadā viņš uzrakstīja C valodā CGI programmu kopumu, ko nosauca par Personal Home Page Tools. No 1997. gada Andi Gutmans un Zeev Suraski parsētāju uzrakstīja no jauna, un tā radās PHP 3.

Ko apzīmē saīsinājums PHP?

Sākotnēji Personal Home Page. Kopš PHP 3 nosaukums ir rekursīvs akronīms: PHP: Hypertext Preprocessor. Saīsinājums tātad satur pats sevi.

Kāpēc nebija PHP 6?

PHP 6 bija jānes dziļš Unicode atbalsts. Saskaņā ar PHP rokasgrāmatu šis darbs tika pārtraukts. Atsevišķas plānotās funkcijas nonāca PHP 5.3 un 5.4, nākamā lielā versija tad saucās PHP 7.

Kopš kura laika pastāv PHP-FPM un OPcache?

PHP-FPM kā atsevišķa SAPI tika iekļauts ar PHP 5.3.3. OPcache saskaņā ar rokasgrāmatu ir komplektā kopš PHP 5.5.0, un iepriekš versijām 5.2 līdz 5.4 bija pieejams caur PECL.

Avoti

Tūlītējs kontakts

Katra stunda ir svarīga. Rakstiet mums tūlīt.

Īsi aprakstiet sistēmu, PHP versiju un novēroto. Mēs sazināsimies, noskaidrosim situāciju un strādāsim attālināti, līdz incidents ir slēgts un dokumentēts.

Tūlītēja palīdzība