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

    Bylo vydáno Eclipse IDE 2026-06 aneb Eclipse 4.40. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý software

    Asterinas (GitHub) je v Rustu napsané jádro operačního systému poskytující s jádrem Linux kompatibilní ABI. Vydána byla verze 0.18.0. První distribucí postavenou nad jádrem Asterinas je Asterinas NixOS. Nejedná se o oficiální projekt NixOS a nemá nic společného s NixOS Foundation.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | Zajímavý článek

    Podrobně byla rozebrána kritická zranitelnost v nf_tables (CVE-2026-23111). Další lokální eskalace práv na Linuxu. V upstreamu byla zranitelnost již v únoru opravena. Ve zdrojovém kódu stačilo odstranit 1 vykřičník.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | Nová verze

    Evropská komise (EK) nařídila americké společnosti Meta, že musí znovu umožnit bezplatný přístup konkurenčním obecně zaměřeným asistentům umělé inteligence (AI) k WhatsAppu a tento přístup musí zachovat až do ukončení antimonopolního šetření. Opatření je dočasné a má zabránit vážnému a nevratnému poškození konkurence na rychle rostoucím trhu s obecnými AI asistenty. Meta uvedla, že se proti rozhodnutí odvolá.

    Ladislav Hagara | Komentářů: 8
    včera 11:44 | IT novinky

    Společnost Anthropic představila AI modely Claude Fable 5 a Claude Mythos 5. Claude Fable 5 je první model třídy Mythos určený pro běžné použití.

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

    Byla vydána nová stabilní verze 3.24.0, tj. první z nové řady 3.24, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    včera 03:33 | Komunita

    Na čem pracují vývojáři v Rustu napsaného mikrokernelového unixového operačního systému Redox OS (Wikipedie)? Byl publikován přehled vývoje za květen. Vypíchnout lze nový scheduler EEVDF nebo port desktopového prostředí Xfce na Redox OS.

    Ladislav Hagara | Komentářů: 0
    9.6. 22:22 | Komunita

    Upozornění pro uživatele Asahi Linuxu: Neaktualizujte macOS na verzi 27 Golden Gate! Apple změnil detekci spouštěcích oddílů. Po aktualizaci oddíl s Asahi Linuxem nevidí. Snad je to jenom chyba.

    Ladislav Hagara | Komentářů: 5
    9.6. 15:11 | Komunita

    Na webu konference Den IPv6, která se konala 4. června v Národní technické knihovně v pražských Dejvicích, jsou nyní k dispozici všechny prezentace (v PDF) a jejich videozáznamy. Organizátory konference byly i letos sdružení CESNET, CZ.NIC a NIX.CZ.

    VSladek | Komentářů: 0
    9.6. 13:11 | Nová verze

    Byla vydána nová verze 9.1.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Vypíchnout lze vylepšené vyhledávání nebo podporu Pixel Motion Photos. Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (15%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (27%)
    Celkem 1871 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    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: 408×
    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.