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

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Komunita

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 2
    včera 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 2
    včera 14:22 | Zajímavý software

    Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.

    Ladislav Hagara | Komentářů: 15
    včera 13:22 | Komunita

    První Mobile Linux Hackday v Plzni, tj. komunitní setkání věnované Linuxu na mobilních zařízeních, proběhne 24. července od 10:00. Akce je otevřená všem zájemcům – od zvědavců po zkušené vývojáře. Dopoledne proběhnou přednášky Davida Heidelberga a Petra Hodiny o aktuálním stavu mobilního Linuxu: proč vůbec chtít tučňáka v kapse, jaké telefony jsou dnes dobře podporované a co taková podpora obnáší. Po obědě se zaměříme na konkrétní

    … více »
    Ladislav Hagara | Komentářů: 0
    14.7. 19:33 | Nová verze

    3D software Blender byl vydán ve verzi 5.2 s prodlouženou podporou. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:55 | Zajímavý software

    SketchForge 3D (GitHub, reddit) je open source 3D editor / CAD běžící ve webovém prohlížeči bez nutnosti účtu nebo cloudového úložiště. Inspirovaný byl Tinkercadem. Doporučena je lokální instalace.

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

    Byla vydána nová verze 11.9 webového prohlížeče Midori (Wikipedie, GitHub). S novým centrem ovládání, pokročilejším blokováním reklam, optimalizací výkonu…

    Ladislav Hagara | Komentářů: 1
    14.7. 04:22 | Zajímavý projekt

    Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.

    Ladislav Hagara | Komentářů: 9
    13.7. 18:00 | IT novinky

    Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2133 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Problém s array v PHP

    11.5.2014 00:34 Marián
    Problém s array v PHP
    Přečteno: 429×
    Zdravím, vidí tady někdo funkční chybu? Nemůžu na to přijít, proč se nevypíšou i pole "foo" ale jen "bar" :-( Poradí někdo jak to opravit? Děkuji pěkně.
    class Class1 {
      public function set($key, $value){
        $this->data[$key] = $value;
      }
      public function get($key){
        return $this->data[$key];
      }
    }
    
    class Class2 {
      function __construct($obj1){
        $array['aaa']['foo1'] = 'foo1';
        $array['aaa']['foo2'] = 'foo2';
        $array['aaa']['foo3'] = 'foo3';
        $obj1->set('aaa', $array);
      }
    }
    
    
    class Class3 {
      function __construct($obj1){
        $array['aaa']['bar1'] = 'bar1';
        $array['aaa']['bar2'] = 'bar2';
        $array['aaa']['bar3'] = 'bar3';
        $obj1->set('aaa', $array);
      }
    }
    
    
    $obj1 = new Class1();
    $obj2 = new Class2($obj1);
    $obj3 = new Class3($obj1);
    
    var_dump($obj1->get('aaa'));
    Výsledek: array(1) { ["aaa"]=> array(3) { ["bar1"]=> string(4) "bar1" ["bar2"]=> string(4) "bar2" ["bar3"]=> string(4) "bar3" } }
    
    var_export($obj1->get('aaa'));
    Výsledek: array ( 'aaa' => array ( 'bar1' => 'bar1', 'bar2' => 'bar2', 'bar3' => 'bar3', ), )

    Odpovědi

    11.5.2014 01:11 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Problém s array v PHP
    Ty magické metody se nejmenují get a set, ale __get a __set.

    Jinak celé je to úplně zmatené. Ve třídě Class1 chybí deklarace pole $this->data, konstruktor Class2 pracuje s nějakým neznámým polem $array. To pole v $obj1 se prostě přepíše novými hodnotami.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    11.5.2014 01:44 Marián
    Rozbalit Rozbalit vše Re: Problém s array v PHP
    Tak jak to udělat, abych to pole přidal a nepřepsal ? Díky
    11.5.2014 01:47 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Problém s array v PHP
    Asi bych se vykašlal na používání polí a udělal bych to jen v objektech.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    12.5.2014 08:47 Honza Vrana
    Rozbalit Rozbalit vše Re: Problém s array v PHP
    Pokud chcete dve pole spojit pouzijte funkci array_merge

    Honza Vrana
    12.5.2014 12:29 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Problém s array v PHP
    pole je prostě přepsáno, to nevidíte ?
    function __construct($obj1){
        $array['aaa']['bar1'] = 'bar1';
        $array['aaa']['bar2'] = 'bar2';
        $array['aaa']['bar3'] = 'bar3';
        $obj1->set('aaa', $array);
      }
    
    fungovalo by
    function __construct($obj1){
        $array['bbb']['bar1'] = 'bar1';
        $array['bbb']['bar2'] = 'bar2';
        $array['bbb']['bar3'] = 'bar3';
        $obj1->set('bbb', $array);
      }
    

    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.