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 14:11 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 2
    dnes 11:44 | Komunita

    Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.

    Ladislav Hagara | Komentářů: 10
    dnes 11:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Komunita

    V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Nová verze

    Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 02:00 | Nová verze

    Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.

    Ladislav Hagara | Komentářů: 0
    včera 23:11 | Komunita

    Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.

    Ladislav Hagara | Komentářů: 2
    14.6. 21:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    14.6. 13:33 | Zajímavý software

    Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.

    Ladislav Hagara | Komentářů: 0
    13.6. 15:22 | IT novinky

    Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.

    Ladislav Hagara | Komentářů: 8
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1916 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.