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 15:11 | Bezpečnostní upozornění

    V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).

    Ladislav Hagara | Komentářů: 2
    dnes 14:00 | IT novinky

    Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.

    Ladislav Hagara | Komentářů: 7
    dnes 12:33 | Zajímavý software

    Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | IT novinky

    Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.

    Ladislav Hagara | Komentářů: 0
    včera 18:11 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 16:33 | IT novinky

    Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.

    Ladislav Hagara | Komentářů: 2
    včera 15:55 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

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

    Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.10. 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 5
    6.10. 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (17%)
     (15%)
     (15%)
    Celkem 197 hlasů
     Komentářů: 13, poslední dnes 07:41
    Rozcestník

    Dotaz: php OOP ukladanich promenych

    1.7.2016 20:06 php5
    php OOP ukladanich promenych
    Přečteno: 529×
    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: 46 | 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: 46 | 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.