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 04:33 | Nová verze

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 0
    dnes 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

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

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 3
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:00 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    1.6. 22:33 | Bezpečnostní upozornění

    npm balíčky @redhat-cloud-services byly kompromitovány.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (15%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1809 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: PHP - Objasnění zápisu

    30.10.2014 19:07 Matějíček
    PHP - Objasnění zápisu
    Přečteno: 347×
    Ahoj, nechápu tento zápis, může někdo objasnit? Děkuji
    $var = 'text';
    $var = '

    '.$var.'

    ';
    Není to náhodou hodně špatně? Co na to říká paměť? A jak to, že to vůbec funguje? Není správně tohle?
    $var1 = 'text';
    $var = '

    '.$var1.'

    ';

    Řešení dotazu:


    Odpovědi

    Řešení 1× (rADOn)
    FrostyX avatar 30.10.2014 19:34 FrostyX | skóre: 27 | blog: Frostyho_blog | Olomouc
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Nejdříve se ti vyhodnotí pravá strana od rovnítka, takže ''.$var.'' se vyhodnotí na 'text' a až potom se to uloží do proměnné nalevo od rovnítka, tedy do $var.
    FrostyX.cz | 1984 was not supposed to be an instruction manual.
    30.10.2014 20:20 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Oba zápisy udělají zhruba totéž, jen ten první bude o něco málo pomalejší a vezme si o drobek víc paměti. Navíc ten první způsob může narušit logiku programu - nikoli však výsledek.

    Je tedy lepší používat druhý způsob.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    30.10.2014 20:34 Matějíček
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Co prosím znamená, že může narušit logiku programu ?
    30.10.2014 21:04 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Tak tedy příklad. Mám string a chci ho ošetřit pro výstup do HTML.
    $out = "Adam & syn";
    :
    $out = htmlspecialchars($out);
    :
    echo $out;
    
    Dvojtečkami jsem naznačil, že tam může být naplnění jiných proměnných. Představ si, že si omylem smažeš prostřední řádek nebo ho omylem budeš mít pod sebou 2×. Program ti zdánlivě bude fungovat, ale bude dávat chybné výsledky.

    Často se takové chyby objevují v opomenutí ošetření proti SQL injection (pokud někdo ještě nepoužívá prepared statements). Stačí přidat jeden sloupec a jednoduše zapomenout ho ošetřit.

    Pokud pokaždé použiješ další proměnnou, nestane se ti to. Je to pojistka proti vlastním chybám a také umožníš procesoru efektivněji přeskládat instrukce.

    Kromě toho to např. ve funkcionálních jazycích ani jinak nejde.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    31.10.2014 20:28 Matějíček
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    To znamená, že ten zápis je taky špatně? Správně by to mělo být tato ? Díky
    $out = "Adam & syn";
    :
    $out1 = htmlspecialchars($out);
    :
    echo $out1;
    31.10.2014 20:30 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Bingo!
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 31.10.2014 13:07 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Můžete to, prosím, rozvést? Zajímalo by mě, co se v paměti přesně stane a proč ten první způsob bude pomalejší. Vyhodnocení pravé strany obou způsobů musí fungovat stejně, zabrat stejně času i paměti, nebo ne? V druhém způsobu budu mít o proměnnou více, nebo ji uvolní GC?
    31.10.2014 14:49 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Přesný mechanismus neznám, ale v principu půjde asi o to, že u prvního způsobu se GC volá 2×, ale u druhého jen 1× a uvolní oba objekty současně.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 31.10.2014 16:20 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: PHP - Objasnění zápisu
    Mnohokrát děkuji, to je přesně to, co jsem chtěl vědět :)

    Založit nové vláknoNahoru

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

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