Array ( [0] => 15481281 [id] => 15481281 [1] => cswiki [site] => cswiki [2] => PHP [uri] => PHP [3] => Rasmus Lerdorf cropped.jpg [img] => Rasmus Lerdorf cropped.jpg [4] => [day_avg] => [5] => [day_diff] => [6] => [day_last] => [7] => [day_prev_last] => [8] => [oai] => [9] => [is_good] => [10] => [object_type] => [11] => 1 [has_content] => 1 [12] => [oai_cs_optimisticky] => ) Array ( [0] => {{Infobox - programovací jazyk [1] => | název = PHP [2] => | logo = PHP-logo.svg [3] => | popisek loga = [4] => | paradigma = [[Imperativní programování|imperativní]], [[Objektově orientované programování|objektově orientované]], [[Procedurální programování|procedurální]], [[Reflektivní programovací jazyk|reflektivní]] [5] => | vznik = 1995 [6] => | autor = [[Rasmus Lerdorf]] [7] => | vývojář = [[The PHP Group]] [8] => | první vydání = [[8. červen|8. června]] [[1995]] [9] => | poslední verze = 8.3.0{{Citace elektronického periodika [10] => | titul = PHP: News Archive - 2023 [11] => | periodikum = www.php.net [12] => | url = https://www.php.net/archive/2023.php#2023-11-23-2 [13] => | datum přístupu = 2023-11-23 [14] => }}, 8.2.4[https://www.php.net/index.php#2023-03-16-2 PHP 8.2.4 Released!], 8.1.17[https://www.php.net/archive/2023.php#2023-03-16-1 PHP 8.1.17 Released!], 8.0.23[https://www.php.net/archive/2022.php#2022-09-01-3 PHP 8.0.23 Released!] a 7.4.32[https://www.php.net/archive/2022.php#2022-09-29-1 PHP 7.4.32 Released!] [15] => | datum poslední verze = [[16. srpen|16. srpna]] [[2023]] (8.2.9)[https://www.php.net/ChangeLog-8.php#8.2.6 PHP 8.2.6 Released!]
[[16. březen]] [[2023]] (8.2.4, 8.1.17) [16] => | typování = [[Typový systém#Dynamická typová kontrola|dynamická]], [[Typový systém#Silné a slabé typování|slabá]] [17] => | implementace = [[Zend Engine]], [[Phalanger]], [[Quercus (software)|Quercus]], [[HipHop for PHP|HipHop]] [18] => | dialekty = [19] => | ovlivněno = [[C (programovací jazyk)|C]] [20] => | ovlivnil = [[RadPHP]] [21] => | operační systém = [[Multiplatformní software|multiplatformní]] [22] => | licence = [[PHP License]] [23] => | web = http://www.php.net [24] => }} [25] => '''PHP''' ([[rekurzivní zkratka]] ''PHP: '''Hypertext Preprocessor''''', česky „PHP: [[Hypertext]]ový [[preprocesor]]“, původně '''''Personal Home Page''''') je [[skriptovací jazyk|skriptovací]] [[programovací jazyk]]. Je určený především pro programování dynamických [[Webová stránka|internetových stránek]] a webových aplikací například ve formátu [[Hypertext Markup Language|HTML]], [[Extensible Hypertext Markup Language|XHTML]] či [[Wireless Markup Language|WML]]. PHP lze použít i k tvorbě konzolových a desktopových aplikací. Pro desktopové použití existuje [[Kompilovaný jazyk|kompilovaná]] forma jazyka. [26] => [27] => Při použití PHP pro dynamické stránky jsou skripty prováděny na straně [[server]]u – k uživateli je přenášen až výsledek jejich činnosti. Interpret PHP skriptu je možné volat pomocí [[Příkazový řádek|příkazového řádku]], dotazovacích metod [[Hypertext Transfer Protocol|HTTP]] nebo pomocí [[Webová služba|webových služeb]]. [[Syntax]]e jazyka je inspirována několika programovacími jazyky ([[Perl]], [[C (programovací jazyk)|C]], [[Pascal (programovací jazyk)|Pascal]] a [[Java (programovací jazyk)|Java]]). Jazyk PHP je nezávislý na [[Počítačová platforma|platformě]], rozdíly v různých [[operační systém|operačních systémech]] se omezují na několik systémově závislých funkcí a skripty lze většinou mezi operačními systémy přenášet bez jakýchkoli úprav. [28] => [29] => PHP podporuje mnoho knihoven pro různé účely – např. zpracování textu, grafiky, práci se soubory, přístup k většině databázových systémů (mj. [[MySQL]], [[Open Database Connectivity|ODBC]], [[Oracle Database|Oracle]], [[PostgreSQL]], [[Microsoft SQL Server|MSSQL]], [[SQLite]]), podporu celé řady internetových protokolů ([[Hypertext Transfer Protocol|HTTP]], [[Simple Mail Transfer Protocol|SMTP]], [[Simple Network Management Protocol|SNMP]], [[File Transfer Protocol|FTP]], [[Internet Message Access Protocol|IMAP]], [[Post Office Protocol|POP3]], [[LDAP]], …). [30] => [31] => PHP je nejrozšířenějším skriptovacím jazykem pro tvorbu internetových stránek, k únoru 2024 měl podíl asi 77 %.{{Citace elektronického periodika [32] => | titul = Usage Statistics and Market Share of PHP for Websites, February 2024 [33] => | periodikum = w3techs.com [34] => | url = https://w3techs.com/technologies/details/pl-php [35] => | datum přístupu = 2024-02-21 [36] => }} Oblíbeným se stal především díky jednoduchosti použití a bohaté zásobě funkcí. V kombinaci s operačním systémem Linux, databázovým systémem (obvykle [[MySQL]]/[[MariaDB]] nebo [[PostgreSQL]]) a webovým serverem [[Apache HTTP Server|Apache]] je často využíván k tvorbě [[webová aplikace|webových aplikací]]. Pro tuto kombinaci se vžila zkratka [[LAMP]] – tedy spojení [[Linux]], [[Apache HTTP Server|Apache]], [[MySQL]] a PHP, [[Perl]] nebo [[Python]]. [37] => [38] => V PHP jsou napsány i velké internetové projekty, včetně [[Wikipedie]] nebo [[Facebook]]u (Facebook používá PHP transformované do [[C++]] pomocí aplikace [[HipHop for PHP]] a to především kvůli vyšší rychlosti). [39] => [40] => == Ukázka kódu == [41] => Takto v PHP vypadá skript [[Hello world]]: [42] => [43] => [44] => [45] => [46] => Můžeme text ale přenášet i přes proměnnou: [47] => [48] => $promenna = "Ahoj, světe!"; [50] => echo $promenna; [51] => ?> [52] => [53] => [54] => == Některé vlastnosti jazyka PHP == [55] => * Jazyk PHP je dynamicky typovaný, tzn. že datový typ [[proměnná|proměnné]] je vázán na hodnotu, nikoliv na proměnnou. [56] => * [[Pole]] jsou asociativní, tedy ve skutečnosti se jedná o [[Hašovací tabulka|hašovací tabulky]], které ukládají páry klíč → hodnota. Klíčem může být pouze [[Integer|celé číslo]] anebo [[Textový řetězec|řetězec]], jedno pole může dokonce obsahovat klíče jak celočíselné, tak řetězcové. Každé pole ještě drží pořadí párů, toto pořadí je zcela nezávislé na klíčích i hodnotách. [57] => * Řetězce lze v PHP zapsat 2 různými způsoby, a to: [58] => ** uzavírat do uvozovek (při vyhodnocení se provede nahrazení proměnných uvnitř) [59] => ** uzavírat do apostrofů (nahrazuje se jen [[escapování|escape sekvence]] \'). [60] => * Kromě proměnných, které lze vytvářet i rušit, lze definovat konstanty. Proměnné mají své ''úrovně viditelnosti'' a pravidla pro jejich perzistenci (např. proměnná vytvořená ve funkci nebo metodě je po jejím vykonání automaticky zrušena, naproti tomu, proměnná vytvořená např. v cyklu nebo vloženém souboru bude viditelná do skončení programu). Konstanty jsou viditelné ze všech úrovní a po jejich definování je nelze zrušit. [61] => * PHP podporuje reference, pomocí kterých lze do proměnných ukládat odkazy na libovolnou jinou proměnnou, nebo i prvek jejího pole. Jako reference lze volat i parametry funkce. U každé proměnné PHP eviduje, kolik na ni směřuje referencí, a podle toho se rozhoduje, kdy může kterou proměnnou zrušit. [62] => [63] => [64] => // Zde je v proměnné string (tečka je operátor spojování řetězců) [65] => $retez = "Ahoj, světe" . ', mám se dobře' . " a nevadí, že střídám oddělovače"; [66] => [67] => // Zde je v proměnné číslo (int) [68] => $cislo = 100; [69] => [70] => // Do proměnné je možné dát pole, které obsahuje jak čísla, tak znaky či další pole [71] => $pole = array('a', 'b', 1, 2, array('první' => 'podpole', 'vytištěno')); [72] => [73] => // Nenahlásí chybu (jenom varování) a vytiskne 'Array' [74] => print($pole); [75] => [76] => // Vytiskne obsah proměnné pole [77] => print_r($pole); [78] => [79] => // Test porovnání [80] => $cislo = 100; [81] => $retez = '100'; [82] => [83] => // Toto porovnání ('==') platí díky automatické typové konverzi [84] => if ($retez == $cislo) { [85] => echo 'Jsou stejné'; [86] => } [87] => [88] => // Ale porovnání pomocí '===' neplatí, neboť nejsou stejné typy [89] => if ($retez === $cislo) { [90] => echo 'Jsou stejné'; [91] => } else { [92] => echo 'To by nešlo'; [93] => } [94] => [95] => [96] => === Superglobální proměnné === [97] => * PHP do verze 4.2.0 ve výchozím nastavení automaticky přejímalo veškeré proměnné poslané jakoukoliv metodou ([[Hypertext Transfer Protocol|HTTP]] POST, HTTP GET, [[HTTP cookie]], ale i ze zabudovaného mechanismu sessions) a umožňovalo s nimi dále pracovat jako s [[Globální proměnná|globálními]] – tato možnost představovala bezpečnostní riziko[http://www.zive.cz/Default.aspx?section=44&server=1&article=108362 Živě.cz: Problémy starých skriptů v novém PHP]. [98] => * Od verze 4.2.0 lze hodnotu získat z tzv. [[Superglobální proměnná|superglobálních proměnných]] s garancí původu informace – tedy že data byla odeslána požadovanou metodou. Používání globálních proměnných je stále možné pomocí konfigurační direktivy register_globals povolit, ale z bezpečnostních důvodů je to silně nedoporučováno [http://php.vrana.cz/vypnuti-register_globals.php Jakub Vrána: Vypnutí register_globals]. [99] => [100] => [101] => // odešlu formulář metodou POST, kde do pole s názvem jmeno vepíšu 'Tom' [102] => echo $jmeno; // vrátí 'Tom', funguje pouze v případě povolených globálních proměnných [103] => echo $_POST['jmeno']; // vrátí 'Tom', superglobální proměnné fungují i při vypnutých globálních proměnných [104] => echo $_GET['jmeno']; // vypíše chybu úrovně 'notice' o neexistenci proměnné a vrátí NULL [105] => // NULL je zvláštní hodnota libovolného typu proměnných pro stav 'nedefinováno' [106] => [107] => [108] => == Významné projekty napsané v PHP == [109] => * [[MediaWiki]] – software pro tvorbu webových projektů typu [[wiki]], např. [[Wikipedie]] – této webové encyklopedie; [110] => * [[phpBB]] – balík pro provoz webového fóra; [111] => * [[WordPress]] – [[Systém pro správu obsahu|publikační systém]] pro provoz [[blog]]ů a podobných aplikací; [112] => * [[Grav]] – [[Systém pro správu obsahu|publikační systém]] pro provoz [[blog]]ů a podobných aplikací, který používá [[Prostý databázový soubor|prosté databázové soubory]]; [113] => * [[Drupal]] – [[Systém pro správu obsahu|publikační systém]] pro provoz komplexních webových systémů; [114] => * [[Adminer]] – webová aplikace pro správu databázového systému [[MySQL]]; [115] => * [[phpMyAdmin]] – oblíbená webová aplikace pro správu databázového systému [[MySQL]]; [116] => * [[Texy!]] – překladač intuitivní syntaxe pro formátování textu na [[Hypertext Markup Language|HTML]]; [117] => * [[Nette Framework]] – framework pro tvorbu webových aplikací v PHP; [118] => * [[Facebook]] – rozsáhlá sociální síť je implementována v PHP. [119] => [120] => Další viz [[:Kategorie:Software v PHP]]. [121] => [122] => == Výhody a nevýhody PHP == [123] => [124] => === Výhody PHP === [125] => * PHP je specializované na webové stránky. [126] => * Rozsáhlý soubor funkcí v základní knihovně PHP (přes pět a půl tisíce), další funkce v [[PECL]]. [127] => * Nativní podpora mnoha databázových systémů. [128] => * Multiplatformnost (zejména [[Linux]] a [[Microsoft Windows]]).{{Citace elektronického periodika |titul=linuxsoft.cz: Provoz ve Windows |url=http://www.linuxsoft.cz/article.php?id_article=629 |datum přístupu=2010-01-24 |url archivu=https://web.archive.org/web/20100222064639/http://www.linuxsoft.cz/article.php?id_article=629 |datum archivace=2010-02-22 |nedostupné=ano }} [129] => * Možnost využití nativních funkcí operačního systému (možná nekompatibilita s jiným operačním systémem).{{Citace elektronického periodika |titul=linuxsoft.cz: Funkce pro interakci s operačním systémem |url=http://www.linuxsoft.cz/article.php?id_article=644 |datum přístupu=2010-01-24 |url archivu=https://web.archive.org/web/20091211084919/http://www.linuxsoft.cz/article.php?id_article=644 |datum archivace=2009-12-11 |nedostupné=ano }} [130] => * Strmá křivka učení. [131] => * Obrovská podpora na [[Webhosting|hostingových]] službách – PHP je fakticky standardem, který je prakticky všude.[http://www.jakpsatweb.cz/katalog/hosting-php.html Jak psát web: Hosting s PHP] [132] => * Obrovské množství projektů a kódů, které lze zdarma využít ([[WordPress]], [[phpBB]] a další). [133] => * Poměrně slušná dokumentace.{{en}} [http://www.php.net/manual/en/ PHP manuál] [134] => * Velmi svobodná licence, která (v protikladu k např. [[GNU General Public License|GPL]]) neobsahuje [[copyleft]]. {{en}} [http://php.net/license/index.php PHP Licensing] [135] => *Ve standardní distribuci je přítomen [[Ladění (programování)|ladící nástroj]] ([[debugger]] - phpdbg).{{Citace elektronického periodika [136] => | titul = PHP: About debugging in PHP - Manual [137] => | periodikum = www.php.net [138] => | url = https://www.php.net/manual/en/debugger-about.php [139] => | datum přístupu = 2021-11-27 [140] => }} [141] => [142] => === Nevýhody PHP === [143] => * Nekonzistentní pojmenování funkcí, např.: [144] => ** např. strpos(), strchr(), ale str_replace(), str_pad(). [145] => ** Nejednotné názvosloví skupin funkcí, např.: mysql_XXXX, imap_XXXX, json_XXXX (s podtržítkem) versus imageXXXX, bcXXXX, gzXXXX (bez podtržítka). [146] => * Nejednotné pořadí parametrů, např.: array_map() vs. array_filter(). [147] => * Po zpracování požadavku neudržuje kontext aplikace, vytváří jej vždy znovu (oslabuje výkon). [148] => [149] => == Historický vývoj PHP == [150] => {{Viz též|Historie PHP}} [151] => PHP bylo původně označení pro Personal Home Page,{{Citace elektronické monografie| datum přístupu=2008-02-25| url=http://www.php.net/history| titul=History of PHP and related projects | vydavatel=The PHP Group}} tedy osobní domácí stránky. Vše začalo v roce 1994, kdy byla napsána binární část [[Common Gateway Interface]] (CGI) v [[programovací jazyk|programovacím jazyku]] [[C (programovací jazyk)|C]]. Tuto prvotní část napsal [[Dánsko|dánský]]/[[Grónsko|grónský]] programátor [[Rasmus Lerdorf]]. Lerdorf zpočátku vytvořil tyto nástroje pro osobní domácí stránky (Personal Home Page) za účelem možné záměny s malou skupinou skriptů v [[Perl]]u, které chtěl používat pro údržbu osobní domovské stránky. Nástroje měly zajistit běh úloh jako například zobrazení jeho životopisu a zaznamenávání návštěvnosti stránek. Tento binární kód ještě tentýž rok skloubil s jiným programem, který sám napsal. Po spojení s Form Interpreter tak vznikla kombinace PHP/FI, která měla mnohem větší funkčnost. PHP/FI obsahovala širokou implementaci pro [[C (programovací jazyk)|programovací jazyk C]] a navíc tato verze mohla komunikovat s [[databáze]]mi, což umožnilo tvorbu prvních jednoduchých dynamických [[webové aplikace|webových aplikací]]. Lerdorf veřejně oznámil vydání PHP/FI (pod názvem „Personal Home Page Tools (PHP Tools) version 1.0“) v diskuzní skupině [[Usenet]] dne [[8. červen|8. června]] [[1995]].{{Citace elektronické monografie | titul = Announce: Personal Home Page Tools (PHP Tools) | autor = Lerdorf, Rasmus | datum vydání = [[1995-06-08]] | newsgroup = comp.infosystems.www.authoring.cgi | url = http://groups.google.com/group/comp.infosystems.www.authoring.cgi/msg/cc7d43454d64d133 | datum přístupu = 2006-09-17}} Jeho cílem bylo rozšířit okruh uživatelů, aby mohl najít co nejvíce chyb a tak zdokonalil kód. Tato verze již měla základní vlastnosti, které měly i pozdější verze PHP, například proměnné ve stylu [[Perl]]u, zpracování formulářů a možnost vložit [[HyperText Markup Language|HTML]] kód. Syntaxe byla obdobná jako u [[Perl]]u, ale byla omezenější, jednodušší a méně konzistentní. [152] => [153] => [[Zeev Suraski]] a [[Andi Gutmans]], dva izraelští vývojáři na [[Technion IIT]], přepsali [[parser]] v roce [[1997]], vytvořili tak základ PHP 3 a změnili název jazyka na [[rekurzivní zkratka|rekurzivní zkratku]] PHP = PHP: Hypertext Preprocessor. Tým vývojářů oficiálně vydal PHP/FI 2 v [[Listopad]]u [[1997]] po měsíčním testování [[beta verze]]. Poté začalo veřejné testování PHP 3, a její oficiální uvolnění přišlo v [[červen|červnu]] [[1998]]. [[Zeev Suraski]] a [[Andi Gutmans]] poté začali opětovné přepisování jádra PHP a vydali [[Zend Engine]] v roce [[1999]].{{Citace elektronické monografie | titul = Zend Engine version 2.0: Feature Overview and Design | vydavatel = Zend Technologies Ltd. | url = http://www.zend.com/zend/zend-engine-summary.php | datum přístupu = 2006-09-17 | url archivu = https://web.archive.org/web/20060719204721/http://www.zend.com/zend/zend-engine-summary.php | datum archivace = 2006-07-19 | nedostupné = ano }} Založili firmu [[Zend Technologies]] v [[Ramat Gan]], [[Izrael]]. [154] => [155] => Dne [[22. květen|22. května]] [[2000]] byla vydána verze PHP 4 postavená na [[Zend Engine]] 1.0. Dne [[13. červen|13. června]] [[2004]] byla představena verze PHP 5, která již stojí na novém [[Zend Engine]] II. PHP 5 obsahuje nové rysy jako je vylepšená podpora pro [[objektově orientované programování]], PHP Data Objects extension (ta definuje lehké a konzistentní rozhraní pro napojení k [[databáze|databázím]]) a nesčetné množství výkonových vylepšení.{{Citace elektronické monografie| titul=Why PHP 5 Rocks!| url=http://www.onlamp.com/pub/a/php/2004/07/15/UpgradePHP5.html| vydavatel=O'Reilly| datum přístupu=2008-02-22| datum=2004-07-15| autor=Trachtenberg, Adam| url archivu=https://web.archive.org/web/20160331232050/http://www.onlamp.com/pub/a/php/2004/07/15/UpgradePHP5.html| datum archivace=2016-03-31| nedostupné=ano}} PHP 4 se již dále nevyvíjí a pro tuto verzi se nebudou vydávat ani žádné bezpečnostní aktualizace.{{Citace elektronické monografie| titul=php.net 2007 news archive| url=http://www.php.net/archive/2007.php| vydavatel=The PHP Group| datum přístupu=2008-02-22| datum=2007-07-13}}{{Citace elektronické monografie| datum přístupu=2008-03-16| url=http://www.internetnews.com/dev-news/article.php/3725291| titul=PHP 4 is Dead–Long Live PHP 5 | vydavatel=InternetNews| datum=2008-02-01| autor=Kerner, Sean Michael}} [156] => [157] => V roce [[2008]] se stává PHP 5 jedinou stabilní verzí, která se vyvíjela. Později se zjistilo, že zde chybí static binding, byl přidán v PHP 5.3.{{Citace elektronické monografie| url=http://www.digitalsandwich.com/archives/53-Late-Static-Binding-in-PHP.html| datum přístupu=2008-03-25| titul=Late Static Binding in PHP| datum=2006-02-23| vydavatel=Digital Sandwich| url archivu=https://web.archive.org/web/20080727010343/http://www.digitalsandwich.com/archives/53-Late-Static-Binding-in-PHP.html| datum archivace=2008-07-27| nedostupné=ano}}{{Citace elektronické monografie| datum přístupu=2008-03-25| url=http://ca3.php.net/language.oop5.static| titul=Static Keyword| vydavatel=The PHP Group}} Plánované PHP 6 se vyvíjelo s verzí PHP 5. Mezi hlavní změny patří odebrání register_globals,{{Citace elektronické monografie| datum přístupu=2008-04-04| url=http://uk.php.net/register_globals| titul=Using Register Globals| vydavatel=PHP}} magické uvozovky{{zdroj?}} a safe mode.{{Citace elektronické monografie| datum přístupu=2008-03-24| url=http://www.corephp.co.uk/archives/19-Prepare-for-PHP-6.html| titul=Prepare for PHP 6| vydavatel=CorePHP| datum=2005-11-23| url archivu=https://web.archive.org/web/20080301184725/http://www.corephp.co.uk/archives/19-Prepare-for-PHP-6.html| datum archivace=2008-03-01| nedostupné=ano}} [158] => [159] => PHP ještě plně nepodporuje [[Unicode]] nebo multibyte strings; podpora [[unicode]] bude zahrnuta až do verze PHP následující po PHP 5. Spousta kvalitních [[Otevřený software|open sourcových]] projektů pozastavilo podporu PHP 4 ve svých nových kódech od [[5. únor|5. února]] [[2008]]. Aby jim konsorcium vývojářů PHP usnadnilo přechod na PHP 5, poskytlo jim přechodovou verzi z PHP 4 na PHP 5.{{Citace elektronické monografie | url=http://gophp5.org/sites/gophp5.org/files/press_release.pdf | formát=PDF | titul=PHP projects join forces to Go PHP 5 | datum přístupu=2008-02-23 | edice=GoPHP5 Press Release | autor=GoPHP5 | url archivu=https://www.webcitation.org/5lubU9am9?url=http://gophp5.org/sites/gophp5.org/files/press_release.pdf | datum archivace=2009-12-10 | nedostupné=ano }}{{Citace elektronické monografie| url=http://gophp5.org/| titul=GoPHP5| vydavatel=GoPHP5| datum přístupu=2008-02-22| url archivu=https://web.archive.org/web/20110427101913/http://www.gophp5.org/| datum archivace=2011-04-27| nedostupné=ano}} [160] => [161] => PHP 5 běží jak ve [[32bitový|32bitovém]], tak i v [[64bitový|64bitovém]] prostředí, ale jedinou oficiální verzí pro [[Microsoft Windows|Windows]] je 32bitová verze, vyžadující 32bitový mód kompatibility [[Microsoft Windows|Windows]] při použití IIS v 64bitovém prostředí [[Microsoft Windows|Windows]]. K dispozici je verze třetí strany,{{Citace elektronické monografie| url=http://fusionxlan.com/PHPx64.php| titul=The PHPx64 Project| datum přístupu=2008-05-05| edice=Fusion-X LAN| autor=Fusion-X LAN| url archivu=https://web.archive.org/web/20080313141325/http://www.fusionxlan.com/PHPx64.php| datum archivace=2008-03-13| nedostupné=ano}} která je určena pro 64bitové [[Microsoft Windows|Windows]]. [162] => [163] => Vývoj verze 6 narazil někdy během roku 2010 na problémy kolem implementace Unicode a od té doby se vydání nové hlavní verze odkládalo, nicméně mnoho podstatných změn přinesly dílčí verze 5.3 a 5.4. PHP 6 bylo stále vyvíjeno, ale nedosáhlo bodu, ve kterém by bylo schváleno k vydání. V červenci 2014 se hlasovalo o názvu nové verze a bylo odhlasováno, že to bude PHP 7.https://wiki.php.net/rfc/php6#vote [164] => [165] => Kvůli oblíbenosti řady PHP 5.6.x byla její podpora prodloužena až do 31. prosince 2018.{{Citace elektronického periodika [166] => | příjmení = Krčmář [167] => | jméno = Petr [168] => | titul = PHP 5.x končí podpora ke konci roku, používá ho 62 % webů [169] => | periodikum = root.cz [170] => | odkaz na periodikum = [171] => | datum vydání = 15. 10. 2018 [172] => | datum přístupu = [173] => | ročník = [174] => | url = https://www.root.cz/zpravicky/php-5-x-konci-podpora-ke-konci-roku-pouziva-ho-62-webu/ [175] => | issn = 1212-8309 [176] => }} I přes blížící se konec podpory PHP 5.6.x ještě v říjnu roku 2018 používalo podle statistik [[W3Techs]] tuto verzi ještě 62 % webů. [177] => [178] => Jazyk PHP byl dlouho definován pouze svou implementací, oficiální specifikace jazyka byla oznámena na konci července 2014.{{Citace elektronického periodika |titul=Archivovaná kopie |url=http://hhvm.com/blog/5723 |datum přístupu=2014-08-01 |url archivu=https://web.archive.org/web/20140803192403/http://hhvm.com/blog/5723 |datum archivace=2014-08-03 |nedostupné=ano }}http://news.php.net/php.internals/75886 [179] => [180] => === Data vydání hlavních verzí === [181] => {| class="wikitable" [182] => |- [183] => ! [184] => ! Význam [185] => ! Stav vývoje [186] => |- [187] => | style="background-color:#fa8072;" | červená [188] => | staré verze [189] => | již nepodporované [190] => |- [191] => | style="background-color:#f0e68c;" | žlutá [192] => | současné verze [193] => | opravovány jsou pouze kritické chyby [194] => |- [195] => | style="background-color:#A0E75A;" | zelená [196] => | současné verze [197] => | aktivně podporováno, chyby jsou opravovány, pravidelně vychází nové verze [198] => |- [199] => | style="background-color:#87CEEB;" | modrá [200] => | budoucí verze [201] => | vývoj nových vlastností [202] => |} [203] => [204] => {| class="wikitable" [205] => ! Řada !! Verze !! Datum vydání !! Poznámka [206] => |- [207] => !1.x [208] => | style="background-color:#fa8072;" | 1.0 [209] => | [[8. červen|8. června]] [[1995]] [210] => | Oficiální název „Personal Home Page Tools (PHP Tools)“. Poprvé byl použit název „PHP“. [211] => |- [212] => !2.x [213] => | style="background-color:#fa8072;" | 2.0 [214] => | [[16. duben|16. dubna]] [[1996]] [215] => | Autor jej považoval za „nejrychlejší a nejjednodušší nástroj“ pro tvorbu dynamických webových stránek. [216] => |- [217] => !3.x [218] => | style="background-color:#fa8072;" | 3.0 [219] => | [[6. červen|6. června]] [[1998]] [220] => | Tým vývojářů se z původní jedné osoby rozšířil na více osob. [[Zeev Suraski]] a [[Andi Gutmans]]
přepsali celý základ pro tuto verzi. [221] => |- [222] => !rowspan="5"|4.x [223] => | style="background-color:#fa8072;" | 4.0 [224] => | [[22. květen|22. května]] [[2000]] [225] => | Přidán pokročilý dvoustupňový systém parse/execute (analyzovat/vykonat) syntaktické analýzy tagu –
[[Zend engine]]. [226] => |- [227] => | style="background-color:#fa8072;" | 4.1 [228] => | [[10. prosinec|10. prosince]] [[2001]] [229] => | Byly představeny ‚superglobalní proměnné‘ ($_GET, $_POST, $_SESSION, atd.) [230] => |- [231] => | style="background-color:#fa8072;" | 4.2 [232] => | [[22. duben|22. dubna]] [[2002]] [233] => | zakázání register_globals ve výchozím nastavení. Data přijatá prostřednictvím sítě
nejsou přímo vkládány do názvů globálních proměnných, uzavírá se tím možnost využití bezpečnostních děr. [234] => |- [235] => | style="background-color:#fa8072;" | 4.3 [236] => | [[27. prosinec|27. prosince]] [[2002]] [237] => | Představeno [[Příkazový řádek|CLI]], jako doplněk [[Common Gateway Interface|CGI]]. [238] => |- [239] => | style="background-color:#fa8072;" | 4.4 [240] => | [[11. srpen|11. srpna]] [[2005]] [241] => | Dodány stránky nápovědy pro skripty phpize a php-config. [242] => |- [243] => !rowspan="7"|5.x [244] => | style="background-color:#fa8072;" | 5.0 [245] => | [[13. červenec|13. července]] [[2004]] [246] => | [[Zend Engine]] II s novým objektovým modelováním. [247] => |- [248] => | style="background-color:#fa8072;" | 5.1 [249] => | [[24. listopad]]u [[2005]] [250] => | Zlepšení výkonu zavedením kompilátoru proměnných v přepracovaném Engine PHP. [251] => |- [252] => | style="background-color:#fa8072;" | 5.2 [253] => | [[2. listopad]]u [[2006]] [254] => | Povolen filtr přípon ve výchozím nastavení. [255] => |- [256] => | style="background-color:#fa8072;" | 5.3 [257] => | [[30. červen|30. června]] [[2009]] [258] => | jmenné prostory, oprava chyb, změny ve funkcích a doplňcích [259] => |- [260] => | style="background-color:#fa8072;" | 5.4 [261] => | [[1. březen|1. března]] [[2012]] [262] => | traits, dereference polí, odstranění některých zastaralých funkcí a direktiv [263] => |- [264] => | style="background-color:#fa8072;" | 5.5 [265] => | [[20. červen|20. června]] [[2013]] [266] => | operátor yield, blok finally pro ošetřování výjimek, označení extenze MySQL jako zastaralé [267] => |- [268] => | style="background-color:#fa8072;" | 5.6 [269] => | [[28. srpen|28. srpna]] [[2014]] [270] => | konstantní skalární výrazy, variadické funkce, operátor pro umocňování, upload souborů větších než 2 GB [271] => |- [272] => !6.x [273] => | style="background:" | 6.0 [274] => | – [275] => | nevydaná verze s plánovanou nativní podporou Unicode [276] => |- [277] => ! rowspan="5" | 7.x [278] => | style="background-color:#fa8072;" | 7.0 [279] => | [[3. prosinec|3. prosince]] [[2015]] [280] => | až 2x zrychlení oproti verzi 5.6, snížena paměťová náročnost, 64bitová podpora, typová kontrola pro skalární datové typy v parametrech, definice návratových hodnot funkcí, nový operátor null coalesce, nový operátor spaceship, přidání anonymních tříd [281] => |- [282] => | style="background-color:#fa8072;" | 7.1 [283] => | [[1. prosinec|1. prosince]] [[2016]] [284] => | návratový [[Void (datový typ)|typ void]], definice viditelnosti konstant, definice parametrů jako nullable, zachytávání více výjimek v jednom catch bloku, přidání typu iterable [285] => |- [286] => | style="background-color:#fa8072;" | 7.2 [287] => | | [[30. listopad]] [[2017]] [288] => |podpora algoritmu [[Argon2]] ve funkci password_hash, generický typ object jako type hint u parametrů funkcí [289] => |- [290] => | style="background-color:#fa8072;" | 7.3 [291] => | | [[6. prosinec]] [[2018]] [292] => |volání funkcí a metod lze zakončit čárkou jako u definice polí, zpětně kompatibilní přepis interní knihovny PCRE pro regulární výrazy [293] => |- [294] => | style="background-color:#fa8072;" | 7.4 [295] => | [[28. listopad]] [[2019]]{{Citace elektronického periodika [296] => | titul = PHP: todo:php74 [297] => | periodikum = wiki.php.net [298] => | url = https://wiki.php.net/todo/php74 [299] => | datum přístupu = 2019-11-11 [300] => }} [301] => |typová kontrola ve vlastnostech objektu (Type Properties), zkrácený zápis anonymních funkcí atd.{{Citace elektronické monografie [302] => | příjmení = Hujer [303] => | jméno = Martin [304] => | titul = Zdroják [305] => | url = https://www.zdrojak.cz/clanky/jake-novinky-prinese-php-7-4/ [306] => | datum vydání = 2019-10-07 [307] => | datum přístupu = 2019-11-11 [308] => }} [309] => |- [310] => ! rowspan="5" | 8.x [311] => | style="background-color:#fa8072;" | 8.0 [312] => | [[26. listopad]] [[2020]] [313] => | union types, pojmenované argumenty, atributy (anotace implementované v jazyce bez [[PHPDoc]]), definice třídních proměnných v konstruktoru, mixed type [314] => |- [315] => | style="background-color:#f0e68c;" | 8.1 [316] => | [[25. listopad]] [[2021]] [317] => | [[výčtový typ]], fibers pro paralelizaci, readonly označení třídních proměnných, intersection type, never type [318] => |- [319] => | style="background-color:#A0E75A;" | 8.2 [320] => | [[24. listopad]] [[2022]] [321] => | readonly třídy, rozšíření typů o null/true/false, použití konstant v traits [322] => |- [323] => | style="background-color:#A0E75A;" | 8.3 [324] => | [[23. listopad]] [[2023]] [325] => | typy pro konstanty ve třídách, funkce json_validate, atribut #[\Override] označující přepsání metody [326] => |- [327] => | style="background-color:#87CEEB;" | 8.4 [328] => | [[21. listopad]] [[2024]] [329] => | [330] => |- [331] => |} [332] => [333] => * ''Zdroj: [http://cz2.php.net/supported-versions.php]'' [334] => [335] => == Reference == [336] => [337] => [338] => == Související články == [339] => * [[LAMP]] [340] => * [[XAMPP]] [341] => * [[Seznam webových aplikačních frameworků#PHP|Seznam PHP frameworků]] [342] => [343] => == Externí odkazy == [344] => * {{Commonscat}} [345] => * {{en}} [http://www.php.net/ www.php.net] – Oficiální stránky PHP [346] => * {{cs}} [https://web.archive.org/web/20050830053328/http://www.linuxsoft.cz/php/ Seriál o PHP na serveru linuxsoft.cz] [347] => * {{cs}} [http://www.jakpsatweb.cz/php/jak-zacit.html PHP pro začátečníky na serveru Jakpsatweb.cz] [348] => * {{cs}} [http://php.vrana.cz/ PHP triky] – Webový zápisník o elegantním programování v PHP pro mírně pokročilé [349] => * {{en}} [http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ PHP: a fractal of bad design] versus [http://php.vrana.cz/php-a-fractal-of-not-so-bad-design.php PHP: a fractal of not so bad design] – konstruktivní polemika o jednotlivých vlastnostech jazyka [350] => [351] => {{Programovací jazyky}} [352] => {{Autoritní data}} [353] => {{Portály|Internet}} [354] => [355] => [[Kategorie:PHP| ]] [356] => [[Kategorie:Šablonovací systémy]] [357] => [[Kategorie:Zkratky]] [] => )
good wiki

PHP

PHP ([url= Server|Apache]url= Server|Apache][rekurzivní zkratka]] PHP: 'Hypertext Preprocessor, česky „PHP: Hypertextový preprocesor“, původně Personal Home Page') je skriptovací programovací jazyk. Je určený především pro programování dynamických internetových stránek a webových aplikací například ve formátu HTML, XHTML či WML.

More about us

About

Expert Team

Vivamus eget neque lacus. Pellentesque egauris ex.

Award winning agency

Lorem ipsum, dolor sit amet consectetur elitorceat .

10 Year Exp.

Pellen tesque eget, mauris lorem iupsum neque lacus.

You might be interested in

,'Perl','Zend Engine','MySQL','Microsoft Windows','C (programovací jazyk)','8. červen','Systém pro správu obsahu','1995','Zeev Suraski','Andi Gutmans','2023','Hypertext Markup Language'