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

    VirtualBox, tj. multiplatformní virtualizační software, byl vydán v nové verzi 7.2. Přehled novinek v Changelogu. Vypíchnou lze vylepšené GUI.

    Ladislav Hagara | Komentářů: 0
    dnes 14:11 | IT novinky

    Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).

    Ladislav Hagara | Komentářů: 1
    dnes 12:44 | Zajímavý software

    Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    včera 11:55 | IT novinky

    Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.

    Ladislav Hagara | Komentářů: 5
    včera 04:33 | Bezpečnostní upozornění

    Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.

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

    Byla vydána nová verze 1.25 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    12.8. 13:44 | Nová verze

    Byla vydána beta verze Linux Mintu 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    12.8. 13:00 | IT novinky

    Provozovatel internetové encyklopedie Wikipedie prohrál v Británii soudní spor týkající se některých částí nového zákona o on-line bezpečnosti. Soud ale varoval britského regulátora Ofcom i odpovědné ministerstvo před zaváděním přílišných omezení. Legislativa zpřísňuje požadavky na on-line platformy, ale zároveň čelí kritice za možné omezování svobody slova. Společnost Wikimedia Foundation, která je zodpovědná za fungování

    … více »
    Ladislav Hagara | Komentářů: 2
    12.8. 12:55 | Nová verze

    Byla vydána verze 2.0.0 nástroje pro synchronizaci dat mezi vícero počítači bez centrálního serveru Syncthing (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 3
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (52%)
     (18%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (16%)
    Celkem 391 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: php OOP ukladanich promenych

    1.7.2016 20:06 php5
    php OOP ukladanich promenych
    Přečteno: 522×
    Chtel bych pomoci php ukladat promene, nasel jsem kus kodu - classa "Store" (viz. nize), ale potreboval bych objasnit, jak funguji magicke metody __set a __get. Je mi jasne ze __set nastavi objekt cow a "moooooo". Ale k cemu je v te funkci __set? Dekuji.
    class Store {
    
        protected $values = array();
    
        public function __get( $key ) {
            return $this->values[ $key ];
        }
    
        public function __set( $key, $value ) {
            $this->values[ $key ] = $value;
        }
    }
    
    $obj = new Store();
    $obj->cow = 'mooooooo';
    

    Odpovědi

    1.7.2016 21:08 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: php OOP ukladanich promenych
    __set() v příkladu nastaví atribut $this->values['cow'] na "mooooooo" místo defaultního nastavení $this->cow na "mooooooo".

    Slovo "protected" je v daném příkladu chybně, patří tam "private".
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.7.2016 22:18 php5
    Rozbalit Rozbalit vše Re: php OOP ukladanich promenych
    viz. "protected" je to zkopirovane odsud: http://stackoverflow.com/questions/4713680/php-get-and-set-magic-methods
    1.7.2016 22:29 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: php OOP ukladanich promenych
    Příklad s "protected" je vytržen z nějakého neznámého kontextu a je v něm i další porušení konvencí, takže bych ho za bernou minci neuznal. O něco níže je lepší příklad, i když o něco delší.

    Prostě "protected" se používá jen výjimečně ve speciálních případech. Jinak je lepší se mu vyhnout a systematicky používat "private".
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.7.2016 22:01 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: php OOP ukladanich promenych
    Metody __set a __get se v php automaticky zavolají, pokud se v kódu pokusíte přistoupil k instanční proměnné, která nebyla ve třídě definována. Uvedený kód to ilustruje: $cow ve třídě neexistuje a když do ní zapíšete hodnotu, zavolá se místo toho metoda __set (a ta může s tou hodnotou něco udělat, zapsat do databáze například), pokud z té neexistující proměnné naopak čtete, volá se metoda __set (která může naopak hodnotu odněkud načíst, třeba opět z databáze). Podobných metod je php ještě několik.
    -- OldFrog
    1.7.2016 22:15 php5
    Rozbalit Rozbalit vše Re: php OOP ukladanich promenych
    dekuji za vysvetleni.

    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.