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

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

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

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 17
    včera 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    22.12. 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    21.12. 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    21.12. 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    19.12. 17:22 | IT novinky

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 14
    Kdo vám letos nadělí dárek?
     (33%)
     (2%)
     (11%)
     (2%)
     (1%)
     (2%)
     (15%)
     (19%)
     (14%)
    Celkem 85 hlasů
     Komentářů: 18, poslední včera 15:30
    Rozcestník

    Dotaz: PHP - Objasnění zápisu

    30.10.2014 19:07 Matějíček
    PHP - Objasnění zápisu
    Přečteno: 342×
    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.