abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | Nová verze

    Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Humor

    Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.

    Ladislav Hagara | Komentářů: 4
    včera 11:33 | Zajímavý článek Ladislav Hagara | Komentářů: 0
    16.9. 21:44 | Nová verze

    Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    16.9. 17:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.

    Ladislav Hagara | Komentářů: 0
    16.9. 12:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    16.9. 00:11 | Nová verze

    Byla vydána nová verze 4.5 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (47%)
     (53%)
     (0%)
     (7%)
     (13%)
     (7%)
     (20%)
     (7%)
     (13%)
    Celkem 15 hlasů
     Komentářů: 1, poslední včera 13:49
    Rozcestník

    PHP 8.0.0

    Po pěti letech od vydání verze 7.0.0 byla vydána nová major verze 8.0.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Nejnovější větev PHP přináší celou řadu nových novinek a vylepšení. Vydána byla také příručka pro přechod z předchozích verzí.

    26.11.2020 17:33 | Ladislav Hagara | Nová verze


    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    27.11.2020 11:49 zabijak
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Pouziva to nekdo v roce 2020? :-D Neustale vyjasnovani rovnosti cisla a stringu je fakt vtipne :-D
    Jendа avatar 27.11.2020 22:48 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Pouziva to nekdo v roce 2020? :-D
    Navrhni lepší alternativu. Cvičení: Python a třeba Flask → rezidentní aplikace trvale držená v paměti nebo příšerný overhead kompletní inicializace interpretru (nepoužitelné na multihostingu, kde je žilión takových věcí, na které skoro nikdo nechodí, na jednom stroji); v podstatě vynucený šablonovací systém místo napsání <?python kus_kódu(); ?> do existující stránky; z toho vyplývající „deploy“ a „reload“ a obecná nepřátelskost k lidem co se tomu nechtějí věnovat, ale chtějí rychle udělat jednu stránku se dvěma tabulkama.
    xkucf03 avatar 28.11.2020 00:33 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    chtějí rychle udělat jednu stránku se dvěma tabulkama.

    +1

    Přestože většinu softwaru píšu v Javě a mám ji rád, musím říct, že na takhle malé věci je PHP pořád asi nejlepší volba – a vlastně se mi v takových případech i líbí ten klasický přístup z dob, kdy PHP začínalo…

    Ono sice pro většinu jazyků (včetně té Javy) existují líbivé tutoriály o tom, jak si uděláš webovou aplikaci napsáním pěti řádků kódu. Ale: jednak je to většinou větší prasárna než to PHP a skutečné aplikace se takhle nepíší a jednak to právě vyžaduje, aby na serveru běžel trvale nějaký proces a spotřebovával RAM. Přesně, jak píšeš:

    rezidentní aplikace trvale držená v paměti nebo příšerný overhead kompletní inicializace interpretru (nepoužitelné na multihostingu, kde je žilión takových věcí, na které skoro nikdo nechodí, na jednom stroji)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    28.11.2020 01:37 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Navrhni lepší alternativu. ... obecná nepřátelskost k lidem co se tomu nechtějí věnovat, ale chtějí rychle udělat jednu stránku se dvěma tabulkama.
    Je otazkou, pro co to ma byt alternativa.

    Matne si pamatuju, ze nekdy v davnych casech, rikejme jim devadesata leta, slo udelat, ze server identifikoval element <script> a tak se daly delat server-side scripty v JavaScriptu nebo Visual Basicu. Ani jedno z toho neni zrovna lepsi alternativa, ale kdyby misto <?php ?> slo pouzit libovolny jazyk podle potreby, mohl by spouste lidi stacit i ten obycejny Python bez flasku, a byl by to krok vpred.

    Pokud potrebujes rychle udělat jednu stránku se dvěma tabulkama je v zasade jedno, co pro to pouzijes, treba i bash.

    Problem u PHP je, ze rada projektu preroste sve puvodni urceni nebo spis schopnosti svych autoru a stanou se z nich desiva monstra, ktera se objevuji ve statisicich ruznych instanci. Wordpress nebo phpBB jsou dokonale priklady toho, jak by se nemelo programovat a (to nejen v PHP), pouzivaji prasarny, o kterych se uz pred dvaceti lety vedelo, ze to jsou prasarny, ale presto to lidi pouzivaji se vsemi dusledky.

    Je otazka, jestli u takto velkych veci uz by tou alternativou nebyl jiny civilizovany jazyk, treba ten Python nebo Java.

    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    xkucf03 avatar 28.11.2020 01:56 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    slo udelat, ze server identifikoval element <script> a tak se daly delat server-side scripty v JavaScriptu nebo Visual Basicu. Ani jedno z toho neni zrovna lepsi alternativa, ale kdyby misto <?php ?> slo pouzit libovolny jazyk podle potreby, mohl by spouste lidi stacit i ten obycejny Python bez flasku, a byl by to krok vpred.

    Ono tím devadesátkovým stylem se dají psát i JSPčka – a taky se tak psala – prostě HTML stránka, do které sem tam vložím nějaký aktivní kód vykonávaný na serveru, sem tam třeba SQL dotaz atd. Víceméně se tak dá psát i dneska a je to hodně podobné tomu PHP.

    Pak se na to <?php ?> taky můžeme dívat jako na instrukci zpracování XML (PI) a napsat si nějaký jednoduchý preprocesor, který rozparsuje XML, z těch ne-PI částí vyrobí něco jako echo "…" a ty PI části vloží doslova a výsledkem je skript v nějakém jazyce, který se akorát spustí a jeho STDIN (nebo výsledek volání nějakých metod/funkcí) se zase poskládá dohromady a pošle klientovi.

    Takhle se dá snadno implementovat třeba <?bash ?>, <?perl ?>, <?python ?> nebo cokoli jiného. Není to těžké a dokonce jsem si říkal, že bych si to cvičně napsal. Ale úskalí tohoto přístupu je v tom, že se tu pracuje s textem, takže není zaručeno, že na výstupu bude validní XML/XHTML nebo že programátor nezapomene něco escapovat. Taky je to nešikovné pro plnění atributů. Dají se tím oIFovat třeba elementy nebo je namnožit v cyklu. Ale nepřijde mi to moc čisté. To už je lepší XSLT či XQuery. Pro jiné formáty než XML je taky potřeba, aby ten preprocesor rozuměl tomu vnějšímu formátu a věděl, co je instrukce zpracování a co tak pouze vypadá, ale ve skutečnosti je to třeba komentář nebo textový literál v tom daném formátu…

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    28.11.2020 03:19 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Ono tím devadesátkovým stylem se dají psát i JSPčka
    Tady nejde ani tak o styl, ten je dneska (dikybohu) vetsinou povazovany za prekonany. Ale slo mi o to, ze sel pouzit univerzalni element <script>, kde se v parametru nastavil jazyk a jestli se ma provest na klientu nebo serveru. Ale uz si nevzpomenu, kde a jak to fungovalo. V te dobe jsem byl rad, ze to nejak fungovalo a i tak jsem nakonec radeji mastil scriptu v Perlu. Matne si vybavuju, ze tam byly omezeni typu, ze tagy musi byt na zacatku radku, nesmi za nimi nic byt, apos.
    Takhle se dá snadno implementovat třeba <?bash ?>, <?perl ?>, <?python ?> nebo cokoli jiného. Není to těžké a dokonce jsem si říkal, že bych si to cvičně napsal. Ale úskalí tohoto přístupu je v tom, že se tu pracuje s textem, takže není zaručeno, že na výstupu bude validní XML/XHTML nebo že programátor nezapomene něco escapovat.
    Vystupem nemusi byt validni XML/XHTML. A muzes to udelat jednoduse, jak se prekladaji JSP.

    Celou stranku prevedes na jednu velkou funkci/metodu/skript podle jazyka. Kde, co je textovy vstup (v tvem pripade XML) prevedes na nejako echo "<?xml..." nebo out.println("<?xml") a co je v processing instruction vlozis primo a pak to prozenes interpretem a co vypadne na STDOUT posles klientovi.

    Pripadne pokud bys to chtel mit ala to moje reseni z davnych casu. Udelas si pruchod SAXem a narazis-li na element script vlozis kod a pokud nechces resit escapovani v kodu, vlozis to do CDATA.
    To už je lepší XSLT či XQuery.
    To me preslo nekdy kolem roku 2002.
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    xkucf03 avatar 28.11.2020 10:22 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Celou stranku prevedes na jednu velkou funkci/metodu/skript podle jazyka. Kde, co je textovy vstup (v tvem pripade XML) prevedes na nejako echo "<?xml..." nebo out.println("<?xml") a co je v processing instruction vlozis primo a pak to prozenes interpretem a co vypadne na STDOUT posles klientovi.

    Ano, přesně to jsem se snažil říct, tím:

    jednoduchý preprocesor, který rozparsuje XML, z těch ne-PI částí vyrobí něco jako echo "…" a ty PI části vloží doslova a výsledkem je skript v nějakém jazyce

    Přemýšlím, jestli by to bylo užitečné… na jednu stranu je to takové trochu prasení a člověk se tam může snadno střelit do nohy, na druhou stranu je to implementačně jednoduché a zároveň hodně mocné. V některých případech by mohl být výstupem i zdroják, který se přeloží na nativní binárku, která se pak bude pouštět jako CGI nebo volat jako sdílená knihovna. V jiných případech by se to jen interpretovalo jako skript.

    Ještě mne napadá k tomu:

    Taky je to nešikovné pro plnění atributů.

    ono by v těch atributech šlo rozpornávat {} nebo ${} (viz syntaxe JSP nebo XSLT) a akorát na tom místě přerušit uvozovky echo "…" / out.print("…") a vložit tam (escapovanou) proměnnou nebo vyhodnocený výraz z {}.

    Vystupem nemusi byt validni XML/XHTML. A muzes to udelat jednoduse, jak se prekladaji JSP.

    Šlo mi spíš o to, že když budeš chtít generovat třeba CSS nebo JavaScript, tak ten preprocesor musí rozumět těmto jazykům a vědět, že nemá interpretovat třeba /** <?bash … > */ protože to v daném jazyce je zakomentované, zatímco v XML by to byly dva textové uzly a mezi nimi PI. Ale pak by bylo potřeba mít způsob, jak v syntaxi toho jazyka najít jeho PI… Nebo to brát pouze jako text, tzn. ta šablona by byla XML, akorát by bylo nějak řečeno, že se její kořenový element nemá vkládat jako element, ale že se má vložit jen jeho textový obsah a interpretovat PI.

    <text content-type="text/css" xmlns="…">
    body {
        color: <?bash … ?>
    }
    </text>

    Kde si ale veškeré escapování řešíš uvnitř těch skriptů, protože preprocesor té syntaxi kolem nerozumí a je to pro něj jen text.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    28.11.2020 15:00 _
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    A můžeš to nazvat třeba HSP - Hitler Server Pages. To by tak odpovívalo. Technologie na úrovni roku 1942.
    28.11.2020 11:39 plostenka | blog: plstnk
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    ... napsání <?python kus_kódu(); ?> do existující stránky...
    Sice existuje libapache2-mod-python, ale ten zda se tohle embedovani neumi. A pritom by to bylo velice prakticke na takove to domaci bastleni.
    Jendа avatar 28.11.2020 13:26 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    A hlavně fuj blé Apache :-)
    28.11.2020 14:59 _
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    OK, boomer.
    27.11.2020 12:58 Luděk Postrašil (SEO UX Experts s.r.o.)
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Kdyby raději zapracovali na kompatibilitě s PHP 5.x. Ono je sice hezké si stavět vzdušné zámky a přidávat si nové funkce do osmičky, ale svět "tam venku" vypadá úplně jinak. Firmy mají spousty interních i webových aplikací napsaných nad PHP 5 (před lety je pracně a draze portovali z verzí 3 a 4 - a po téhle zkušenosti se jim už fakt nic přepisovat nechce).

    Na druhou stranu si zase tak moc nestěžujeme - my totiž zákazníkům dodáváme balíčky s verzí 5 a podporu, sem tam nějaký ten backport nebo vývoj na míru a "vývar" je z toho docela slušný. Zákazníci o přepis / port na novou verzi moc nestojí, takže jim dáváme tu naší 5 nebo doporučujeme přechod na technologii CGI, což je nadčasová věc, která bude fungovat třeba i za dvacet let pořád stejně.
    27.11.2020 16:50 O.V.
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    porad stejne = single threadove a to o 20 let budes mit 256 jaderni procak i v hodinkach :-D
    Jendа avatar 27.11.2020 22:51 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Wat, CGI přece spouští pro každý požadavek nový proces, takže naopak takto běží procesů libovolně mnoho současně. V čem je problém je ten overhead, zejména pokud je to napsané v něčem, co se dlouho inicializuje.
    xkucf03 avatar 28.11.2020 00:35 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: PHP 8.0.0

    Problém CGI je v tom, že se pokaždé dělá fork(), takže při vyšší návštěvnosti je to neefektivní. Ale tenhle problém řeší FastGCI.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Jendа avatar 28.11.2020 00:48 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Mně trvá fork (teda zkoušel jsem to ze shellu, možná to bude u webserveru horší, protože se kdovíjak duplikují věci -- ale na Linuxu je nějaký ne-tak-úplně-fork, který to řeší, ne?) zanedbatelně oproti následujícímu startu PHP nebo nedejbože Pythonu s několika importy.
    xkucf03 avatar 28.11.2020 01:03 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: PHP 8.0.0

    Když to srovnáš třeba s tou Javou, tak tam už se pak volají jen metody. Procesy i vlákna jsou připravené předem a vše je načteno v paměti, takže je to hodně rychlé – ten fork() oproti tomu bude pomalý. Ale daň za to zase je to, že aplikaci musíš mít nastartovanou předem a žere ti RAM – což nechceš dělat pro ty spousty stránek, na které se jen občas přijde někdo podívat. Dá se to řešit různým uspáváním a případně i socket activation, kde pak uspaná aplikace nežere vůbec nic, protože běží jen super-server – rodičovský proces, který drží otevřený socket a v případě potřeby službu spustí. Ale k takovým optimalizacím většinou není potřeba přistupovat a obvykle stačí si vybrat jeden z těch základních přístupů (což někdy může být klidně PHP nebo CGI skript – a jindy zase klasický javovský aplikační server).

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Jendа avatar 28.11.2020 00:51 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    A FastCGI musí mít podporu té aplikace/interpretru (třeba PHP to umí), ale když by to člověk měl dodělávat, tak bych radši vystavil lokální HTTP a z webserveru dělal proxy.
    28.11.2020 15:05 _
    Rozbalit Rozbalit vše Re: PHP 8.0.0
    Dneska to uděláš jako mikroservisu pokud nechceš být sto let za opicema. Tzn. použiješ něco jako Helidon, Molecular, Quarcus nebo jiný framework. Ne, fakt to nebudeš šmudlat jako vlastní HTTP server spouštěný nějakým skriptem, to nejsou mikroservisy ale bastl.

    Založit nové vláknoNahoru


    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.