Co už víme o PHP 8.5

Co už víme o PHP 8.5

PHP 8.5, má plánované vydání 20. listopadu 2025, přináší několik novinek a změn, které ovlivní vývojáře pracující s tímto populárním skriptovacím jazykem.

Nové funkce v PHP 8.5

  • Funkce curl_multi_get_handles: Tato nová funkce v rozšíření cURL umožňuje získat seznam všech aktivních cURL handle v multi handle.To usnadňuje správu a ladění více současných cURL požadavků.
  • Konstanta PHP_BUILD_DATE: PHP 8.5 zavádí novou vestavěnou konstantu PHP_BUILD_DATE, která obsahuje datum a čas kompilace aktuální PHP verze. Tato informace může být užitečná pro diagnostiku a správu verzí v různých prostředích.

Odebrané funkce v PHP 8.5

  • Konstanty MHASH_*: Všechny konstanty začínající na MHASH_ byly v PHP 8.5 označeny jako zastaralé. Tyto konstanty byly spojeny s původním rozšířením mhash, které bylo již dříve nahrazeno modernějším rozšířením hash. Doporučuje se aktualizovat kód a přejít na nové funkce poskytované rozšířením hash pro zajištění kompatibility s budoucími verzemi PHP.

PHP 8.5 pokračuje v trendu zavádění užitečných funkcí a odstraňování zastaralých prvků, čímž zajišťuje moderní a efektivní prostředí pro vývoj webových aplikací.

Novinky v PHP 8.4

Novinky v PHP 8.4

Novinky v PHP 8.4: Co nám přináší nejnovější verze?

PHP 8.4 přichází s celou řadou vylepšení a nových funkcí, které zjednoduší práci vývojářům a zvyší výkon jejich aplikací. Pojďme se podívat na nejvýznamnější změny, které tato verze nabízí.


Zabezpečení a kryptografie

V oblasti kryptografie dochází k rozšíření podpory o algoritmy AEGIS-128L a AEGIS-256 v knihovně Sodium. Tyto algoritmy nabízejí větší flexibilitu při implementaci bezpečných řešení.


Práce s poli

PHP 8.4 zavádí nové funkce pro jednodušší manipulaci s poli:

  • array_find – Najde první prvek splňující podmínku.
  • array_find_key – Vrátí klíč prvku splňujícího podmínku.
  • array_any – Zjistí, zda alespoň jeden prvek pole splňuje danou podmínku.
  • array_all – Zkontroluje, zda všechny prvky pole splňují podmínku.

Práce s textem

Pro efektivnější práci s textem byly přidány tyto novinky:

  • grapheme_str_split – Rozdělí text na části podle grafémů, což je užitečné pro unicode texty.
  • mb_ucfirst a mb_lcfirst – Provádí změnu velkých a malých písmen u prvního znaku textu s podporou multibyte znaků.
  • mb_trim, mb_ltrim, mb_rtrim – Odstraňují mezery nebo jiné znaky z textu s podporou multibyte znaků.

Funkce pro zaokrouhlování

Funkce round() nyní podporuje nové režimy zaokrouhlování, což dává vývojářům větší kontrolu nad způsobem, jakým jsou čísla zaokrouhlována.


Vylepšení pro práci s daty a časem

PHP 8.4 přináší významná rozšíření třídy DateTime a DateTimeImmutable:

  • createFromTimestamp – Nový způsob, jak vytvořit instance těchto tříd z timestampu.
  • getMicrosecond a setMicrosecond – Metody pro získání a nastavení mikrosekund.

Curl: Podpora HTTP/3 a další zlepšení

Knihovna Curl přidává podporu pro HTTP/3 pomocí nových konstant CURL_HTTP_VERSION_3 a CURL_HTTP_VERSION_3ONLY. Dále byly přidány tyto novinky:

  • CURLOPT_PREREQFUNCTION a CURLOPT_DEBUGFUNCTION – Nové možnosti pro lépe definované a debugovací procesy.
  • CURLOPT_SERVER_RESPONSE_TIMEOUT – Nahrazuje původní CURLOPT_FTP_RESPONSE_TIMEOUT.
  • CURLOPT_TCP_KEEPCNT – Nastaví počet kontrol živých spojení TCP.

Další zajímavé novinky

  • phpinfo() nyní zobrazuje velikost integeru.
  • Nová funkce request_parse_body umožňuje jednodušší zpracování těla HTTP požadavků.
  • Funkce curl_version() podporuje zobrazení seznamu vlastností pomocí feature_list.
  • Nová rozhraní http_get_last_response_headers a http_clear_last_response_headers poskytují lepší kontrolu nad HTTP hlavičkami.

Upgrade PCRE2 a změny v regulárních výrazech

PHP 8.4 zahrnuje upgrade knihovny PCRE2, což zlepšuje podporu pro regulární výrazy a jejich výkon.


PHP 8.4 nabízí mnoho užitečných novinek, které stojí za vyzkoušení. Pokud chcete zůstat na špičce vývoje, neváhejte a přejděte na tuto verzi. S kompletním přehledem změn se můžete seznámit na PHP WATCH.

Latte – Šablonovací jazyk pro moderní weby

Latte – Šablonovací jazyk pro moderní weby

Latte je populární šablonovací jazyk vytvořený pro PHP, který klade důraz na bezpečnost, přívětivost a flexibilitu. Jedná se o nástroj určený primárně pro vytváření HTML stránek, který zjednodušuje práci s prezentací dat a odděluji logiku aplikace od jejího vzhledu.


Klíčové vlastnosti Latte

  1. Bezpečnost
    • Latte automaticky escapuje všechny výstupy, aby zabránilo XSS útokům.
    • Nabízí jednoduchý způsob, jak pracovat s proměnými, bez obav z potenciálních bezpečnostních rizik.
  2. Srozumitelnost
    • Syntaxe je intuitivní a snadno pochopitelná i pro začátečníky.
    • Podporuje jednoduché čtení a udržování šablon.
  3. Flexibilita
    • Lze jej snadno rozšířit pomocí vlastních filtrů a funkcí.
    • Podporuje složitější konstrukty, jako jsou podmínky, cykly nebo makra.

Latte 3: Impozantní skok vpřed

Latte 3 přináší mnoho vylepšení a novinek, které zvyšují jeho rychlost, flexibilitu a přizpůsobitelnost.

Hlavní novinky v Latte 3

  1. Deklarace typů
    • Latte nyní podporuje deklaraci typů proměných přímo v šablonách: {var string $name} <h1>Ahoj, {$name}!</h1>
  2. Výrazně rychlejší kompilace
    • Latte 3 bylo optimalizováno pro lepší výkon při zpracování šablon.
  3. Podpora pro Twig-like syntax
    • Nově lze používat alternativní notaci podobnou Twig: {% if user %} <p>Vítám tě, {{ user.name }}!</p> {% endif %}
  4. Zjednodušené makro pro cykly
    • Možnost použít elegantní iteraci přes pole: {foreach $items as $item} <li>{$item}</li> {/foreach}
  5. Lepší diagnostika
    • Latte nyní poskytuje detailnější chybové hlášky, které usnadňují ladění šablon.

Základní příklady Latte

1. Podmínky

{if $isLoggedIn}
    <p>Vítáme tě zpět!</p>
{else}
    <p>Prosím, přihlašte se.</p>
{/if}

2. Výpis dat

<ul>
    {foreach $users as $user}
        <li>{$user->name}</li>
    {/foreach}
</ul>

3. Komentáře

{* Toto je komentář v Latte *}

4. Použití filtrů

<p>{date $article->createdAt, 'd.m.Y'}</p>

Proč používat Latte?

Latte je ideální volbou pro projekty, kde je důležitá bezpečnost, rychlost a snadná udržitelnost kódu. S verzí Latte 3 se tento šablonovací jazyk posouvá ještě dále a přináší nástroje pro moderní webové aplikace.

Propojení Latte a Nette

Latte je úzce propojené s frameworkem Nette, který ho používá jako svůj nativní šablonovací jazyk. Nette poskytuje robustní integraci, která umožňuje snadnou práci s daty z presenterů přímo v šablonách. Tato kombinace zajišťuje hladký průběh vývoje aplikací s jasně oddělenou logikou a prezentací.

Co je to PHP?

Co je to PHP?

PHP je populární skriptovací jazyk určený především pro vývoj webových aplikací. Díky své jednoduchosti, flexibilitě a široké podpoře se stal jedním z nejpoužívanějších jazyků pro tvorbu webů a aplikací. PHP je zkratka pro „PHP: Hypertext Preprocessor,“ což odkazuje na jeho schopnost zpracovávat a generovat dynamický obsah webových stránek.


Stručná historie PHP

PHP vzniklo v roce 1994 jako projekt Rasmuse Lerdorfa, který jej původně vytvořil pro sledování návštěv svého osobního webu. Z jednoduchého nástroje se postupem času vyvinul plnohodnotný programovací jazyk, který je dnes základem milionů webových stránek.

Hlavní milníky:

  • 1995: Vydána první verze „Personal Home Page Tools“.
  • 1997: Přechod na PHP 3, kde bylo přidáno API a jazyk získal výrazně lepší strukturu.
  • 2004: Představení PHP 5 s podporou objektově orientovaného programování.
  • 2020: PHP 8 přineslo výrazné zlepšení výkonu díky JIT kompilaci.

Vlastnosti PHP

  1. Server-side jazyk: PHP běží na serveru, což znamená, že uživatel dostává pouze výsledný HTML, nikoliv samotný kód.
  2. Jednoduchost a přístupnost: Snadná syntaxe a možnost rychlého učení dělají z PHP ideální jazyk pro začátečníky.
  3. Flexibilita: Podporuje různé databáze (např. MySQL, PostgreSQL, SQLite) a webové servery (např. Apache, Nginx).
  4. Bohatá komunita: Díky velké základně vývojářů existuje mnoho knihoven, frameworků (např. Laravel, Symfony, Nette) a nástrojů pro usnadnění vývoje.
  5. Rozšířitelnost: PHP umožňuje přidávání vlastních rozšíření v jazycích jako C/C++.

Jak to vlastně fachčí?

  1. Uživatel odešle požadavek na server.
  2. PHP zpracuje požadavek: Skripty v PHP se spustí na serveru.
  3. Vygenerovaný obsah: PHP skript vytvoří dynamický obsah (např. HTML, JSON, obrázky).
  4. Odeslání výsledku: Server pošle uživateli výsledný obsah.

Jak se používá?

PHP se používá pro:

  • Tvorbu dynamických webových stránek: Správa obsahu, uživatelská interakce apod.
  • Vývoj webových aplikací: Například internetové obchody, fóra nebo CRM systémy.
  • API: PHP lze využít k tvorbě RESTful a GraphQL API.
  • Automatizaci úkolů: Například generování reportů nebo zpracování dat.

Plusi a mínusy PHP

Plus:

  • Snadné nasazení na většině hostingových platforem.
  • Rychlý vývoj díky integrovaným funkcím.
  • Široká komunita a množství dostupných nástrojů.

Mínus:

  • Nižší výkon u velmi složitých aplikací ve srovnání s některými jinými jazyky.
  • Závislost na kvalitě kódu: Nedostatečná znalost může vést k bezpečnostním problémům.

Proč používat PHP?

PHP je skvělou volbou pro vývojáře, kteří hledají snadno přístupný, flexibilní a dobře podporovaný nástroj pro tvorbu webů. Jeho popularita a dlouholetá historie dokazují, že jde o spolehlivý jazyk, který je i nadále aktivně vyvíjen a používán.

Pokud chcete začít s PHP, stačí jen základní znalosti HTML a trocha nadšení. Díky bohatým zdrojům online tutoriálů, komunitě a dokumentaci se snadno naučíte vše potřebné k tvorbě svých vlastních projektů.

Co je to Docker?

Co je to Docker?

Docker je moderní platforma pro virtualizaci a kontejnerizaci aplikací. Umožňuje vytvářet, distribuovat a provozovat aplikace v izolovaných prostředích nazývaných kontejnery. Tento přístup zajišťuje konzistenci mezi vývojovým, testovacím a produkčním prostředím.


Co bylo?

Docker byl představen v roce 2013 společností dotCloud (později přejmenovaná na Docker Inc.). Původní myšlenka byla inspirována Linuxovými kontejnery (LXC), ale Docker tuto technologii zjednodušil a zpopularizoval.

Hlavní milníky:

  • 2013: Vydání první verze Dockeru.
  • 2015: Zavedení Docker Engine a Docker Hub.
  • 2017: Podpora Kubernetes.
  • 2020: Zavedení WSL 2 pro Docker na Windows.

Co je Docker?

  1. Kontejnerizace:
  • Docker izoluje aplikace a jejich závislosti v kontejnerech.
  • Kontejnery sdílejí jádro operačního systému, což je odlišuje od klasických virtuálních strojů (VM).
  1. Přenositelnost:
  • Jednou vytvořený kontejner lze spustit na libovolném systému, který podporuje Docker (Linux, Windows, macOS).
  1. Rychlost a efektivita:
  • Kontejnery jsou lehčí a spouštějí se rychleji než tradiční VM.
  1. Docker Hub:
  • Veřejná repositář pro sdílení a distribuci Docker image.

Jak Docker funguje?

Docker pracuje s následujícími komponentami:

  1. Docker Engine: Jádro platformy, které spravuje kontejnery.
  2. Image: Předpřipravený balíček obsahující aplikaci a její závislosti.
  3. Container: Běžící instance Docker image.
  4. Dockerfile: Skript definující kroky pro vytvoření Docker image.
  5. Docker Compose: Nástroj pro orchestraci více kontejnerů.

Použití Dockeru

  1. Vyvojová prostředí:
  • Snadná replikace prostředí pro vývojáře.
  • Zamezení problémů typu „funguje to na mém počítači“.
  1. Testování a CI/CD:
  • Automatizace nasazení a testů v konzistentním prostředí.
  1. Provoz aplikací:
  • Nasazení mikroslužeb a jejich škálování.
  • Provoz starších aplikací v izolovaných prostředích.
  1. Přenositelnost:
  • Nasazení aplikací na cloudové platformy jako AWS, Azure nebo Google Cloud.

Silné a slabé stránky Dockeru

Silné stránky:

  • Snadné nasazení aplikací.
  • Vysoká přenositelnost.
  • Efektivní využití zdrojů.

Slabé stránky:

  • Strmější učecí křivka pro začátečníky.
  • Složitější debugování v kontejnerizovaných prostředích.

Proč ho používat?

Docker je ideální nástroj pro moderní vývojáře a DevOps specialisty, kteří hledají flexibilitu, škálovatelnost a konzistenci. Usnadňuje vývoj, testování i provoz aplikací v různorodých prostředích.

Pokud chcete začít s Dockerem, doporučujeme prozkoumat oficiální dokumentaci na docker.com.

Co je Nette?

Nette je moderní PHP framework, který se zaměřuje na usnadnění a urychlení vývoje webových aplikací. Je určen jak pro začátečníky, tak i pro profesionály. Nette poskytuje robustní základ pro vývoj bezpečných, škálovatelných a udržitelných aplikací.

Výhody Nette při vývoji aplikací

Zde je shrnutí hlavních výhod, které Nette přináší:

  1. Bezpečnost
    Nette chrání aplikace před nejčastějšími bezpečnostními hrozbami, jako je XSS, CSRF nebo SQL Injection. Má integrované mechanizmy, které pomáhají vývojářům psát bezpečný kód.
  2. Latte šablonovací systém
    Šablonovací systém Latte je snadno čitelný a přehledný. Umožňuje vývojářům psát logiku přímo do šablon, aniž by zasahovali do PHP kódu. Pomáhá také předcházet bezpečnostním chybám (například automaticky escapuje výstup).
  3. Flexibilita
    Nette podporuje různé způsoby vývoje aplikací. Můžete si zvolit komponentový přístup, používat MVC architekturu nebo jednoduše přidat části frameworku do existující aplikace.
  4. Inteligentní router
    Routing v Nette je jednoduchý a efektivní. Nabízí například laditelný systém pro definování URL cest, který umožňuje snadno propojit URL adresy s logikou aplikace.
  5. Komponentový systém
    Nette má propracovaný systém komponent, který umožňuje opakované použití částí uživatelského rozhraní. Komponenty lze snadno spravovat a integrovat do různých částí aplikace.
  6. Debugger a Tracy
    Nette obsahuje nástroj Tracy, který usnadňuje odhalování chyb. Tracy zobrazuje srozumitelný výpis chybových hlášek a umožňuje snadné ladění aplikace.
  7. Výkonnost a efektivita
    Framework je navržen tak, aby byl rychlý a efektivní, s minimálními požadavky na serverové prostředky.
  8. Podpora AJAXu
    Nette usnadňuje implementaci AJAX funkcí. Můžete jednoduše aktualizovat části stránky bez nutnosti jejího znovunačtení.
  9. Komunita a dokumentace
    Nette má silnou komunitu a kvalitní dokumentaci. Nabízí rychlou podporu a příklady kódu, které pomohou vývojářům při řešení problémů.
  10. Rozšiřitelnost
    Nette je modulární framework, což znamená, že si můžete vybrat jen ty části, které skutečně potřebujete. Lze ho snadno integrovat s dalšími knihovnami nebo rozšířeními.

Závěr:
Nette je ideální volbou pro vývoj webových aplikací díky své bezpečnosti, snadné použitelnosti a široké sadě funkcí. Nabízí skvělý poměr mezi jednoduchostí a robustností, což z něj dělá jeden z nejoblíbenějších PHP frameworků v českém prostředí.