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 12:55 | Zajímavý software

    Jsongrep je open-source nástroj, který efektivně prohledává JSON dokumenty (editovat je neumí). Kompiluje regulérní jazyk dotazu do podoby deterministického konečného automatu (DFA), díky čemuž prochází strom JSON dokumentu pouze jednou a je v tom tedy rychlejší než jiné nástroje jako jsou například jq, JMESPath nebo jql. Jsongrep je napsaný v programovacím jazyce Rust, zdrojový kód je dostupný na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 1
    včera 05:55 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 9
    včera 05:22 | Komunita

    Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.

    Ladislav Hagara | Komentářů: 3
    včera 04:00 | Humor

    Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 5
    27.3. 13:00 | Komunita

    Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.

    Ladislav Hagara | Komentářů: 9
    27.3. 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.

    Ladislav Hagara | Komentářů: 1
    27.3. 02:22 | Komunita Ladislav Hagara | Komentářů: 11
    26.3. 23:22 | Komunita

    Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.

    Ladislav Hagara | Komentářů: 3
    26.3. 22:33 | Nová verze

    Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 1
    26.3. 11:33 | Zajímavý článek

    Chris Down v obsáhlém článku „vyvrací mýty o zswap a zram“, vysvětluje, co vlastně dělají a jaké jsou mezi nimi rozdíly. Doporučuje vyhýbat se zram na serveru a bez OOM.

    |🇵🇸 | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (2%)
     (5%)
     (1%)
     (14%)
     (24%)
    Celkem 1179 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou

    1.4.2017 04:09 Fana
    Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    Přečteno: 405×
    Ahoj. Jak funguje PHP v oblasti načítání tříd? Kdo rozhoduje o tom, zda byla již třída načtena či nikoliv a bude se načítat? I když vložím do funkce __autoload() require, include, require_once nebo include_once nikdy se třída nenačte znova, vždy jen jednou. Poradí někdo jak přinutit __autoload() aby načetl soubor s třídou vždy když se pořadovaná třída zavola? Děkuji

    Odpovědi

    1.4.2017 07:05 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    PHP každou třídu načítá autoloadem jen jednou a ukládá si ji do kolekce načtených tříd. Nemá žádný důvod ji načítat podruhé, protože po načtení třídy si ji drží v paměti a opakované načítání by bylo jen plýtváním prostředky. Navíc by to způsobilo konflikt mezi původní třídou a nově načítanou třídou.

    Co si mám představit pod "... když se pořadovaná třída zavola?" Při každém "new" nebo při každém volání nějaké statické metody či atributu? Jak bys chtěl rozlišit, kdy má pracovat s původní a kdy s nově načtenou třídou?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.4.2017 12:45 Fana
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    Ahoj a dík za info, sorry, pořadovaná třída byl jen překlep (ř/ž). A existuje tedy jiná možnost jak zjistit, že systém požaduje nějakou třídu i když ji nebude načítat (jelikož již načtená je)? Dělám takový debugger, dal jsem si s tím strašně moc práce a když přišlo na testování, tvrdě jsem narazil. Omylem jsem zavolal dvě stejné class, debugger ale vypsal pouze tu první. Mohl jsem to předpokládat ale opomněl jsem to:( Nechtěl bych poslat celý projekt šípku:( Díky.
    1.4.2017 13:59 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    Základním pravidlem je, že každá třída je v samostatném souboru, který je podle názvu této třídy pojmenován. Tím se bezpečně vyhneš takovým problémům, protože v jednom adresáři nelze mít dva soubory se stejným názvem.

    Ještě můžeš použít namespace, třídy se shodným názvem v různých namespaces bývají v různých adresářích a mezi sebou se nehádají.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.4.2017 15:51 Fana
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    Já se ale ptám na něco jiného, neřeším strukturu aplikace ale řeším to, jak zachytit každou volanou třídu.
    1.4.2017 16:19 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    Při volání třídy se PHP nejprve podívá do kolekce natažených tříd. Když ji tam najde, tak ji použije. Když ji tam nenajde, zavolá autoloader a jméno třídy mu předá jako parametr.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.4.2017 22:05 Fana
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    No a kde odchytit to nebo "Když ji tam najde" nebo "Když ji tam nenajde". PHP přece musí vědět z jaké třídy nebo souboru se ta třída volá, jinak by nefungovalo.
    1.4.2017 22:46 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    To přece ví autoloader, ze kterého souboru si má tu třídu natáhnout.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    5.4.2017 11:52 DW
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    Ides na to zle z principu objektoveho programovania, ak sa ti zda xdebug.profiler + cachegring moc tazky kaliber, tak by to malo vyzerat nejako takto:
    
      class MotherOfAllClassesInProject {
     
        __construct() {
          if(defined('DEBUG') and DEBUG=1){
            // debug actions for create instance
          }     
        }
    
        __destruct() {
          if(defined('DEBUG') and DEBUG=1){
            // debug actions for destruct instance
          }     
        }
    
      }
    
    
    5.4.2017 14:56 citanus | skóre: 12 | Cork (Ireland)
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    DEBUG=1

    php programmers have to know their stuff : O
    5.4.2017 15:38 DW
    Rozbalit Rozbalit vše Re: Jak v PHP přinutit __autoload() načítat vždy soubory s danou třídou
    njn, teraz viac robim v object pascale a mssql :D jasne ze tam ma byt == a kedze DEBUG nie je premenna tak by to akurat hodilo chybu $debug=1 by bolo horsie :)

    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.