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:33 | IT novinky

    Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.

    Ladislav Hagara | Komentářů: 3
    dnes 12:11 | Komunita

    Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.

    Ladislav Hagara | Komentářů: 1
    dnes 04:44 | Nová verze

    Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 3
    dnes 02:22 | Nová verze

    Google Chrome 144 byl prohlášen za stabilní. Nejnovější stabilní verze 144.0.7559.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).

    Ladislav Hagara | Komentářů: 5
    dnes 01:55 | Humor

    Microsoft zveřejnil zdrojový kód XAML Studia a uvolnil ho pod MIT licencí. XAML Studio je nástroj ze světa Windows, určený pro tvorbu uživatelského rozhraní aplikací pomocí XAML (Extensible Application Markup Language). Stalo se tak zhruba po osmi letech od prvního prohlášení Microsoftu, že se tento kód chystá zveřejnit.

    NUKE GAZA! 🎆 | Komentářů: 1
    dnes 01:44 | Zajímavý projekt

    TimeCapsule, 'časová kapsle', je jazykový model trénovaný výhradně na datech z určitých míst a časových období, aby se tak napodobila autentická slovní zásoba, způsob vyjadřování a názory dané doby. Na Hugging face jsou k dispozici modely natrénované na historických textech dostupných v oblasti Londýna mezi lety 1800 až 1875.

    NUKE GAZA! 🎆 | Komentářů: 6
    včera 17:55 | Nová verze

    Radicle byl vydán ve verzi 1.6.0 s kódovým jménem Amaryllis. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Upozornění

    Zemřel Scott Adams, tvůrce komiksových stripů Dilbert parodujících pracovní prostředí velké firmy.

    Ladislav Hagara | Komentářů: 4
    včera 13:00 | Nová verze

    Sdružení CZ.NIC vydalo novou verzi Knot Resolveru (6.1.0). Jedná se o první vydanou stabilní verzi 6, která je nyní oficiálně preferovanou a doporučovanou verzí, namísto předešlé verze 5. Více o Knot Resolveru 6 je možné se dočíst přímo v dokumentaci.

    VSladek | Komentářů: 3
    včera 01:22 | Nová verze

    Byl vydán Linux Mint 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (5%)
     (0%)
     (8%)
     (19%)
     (3%)
     (6%)
     (3%)
     (11%)
     (44%)
    Celkem 443 hlasů
     Komentářů: 12, poslední včera 21:12
    Rozcestník

    Dotaz: PHP - Získání klíče z vnořeného pole podle hodnoty prvku

    6.4.2014 16:18 Jakub
    PHP - Získání klíče z vnořeného pole podle hodnoty prvku
    Přečteno: 252×
    $a = array('a' => array('bar' => 'aa', 'act' => 1, 'ber' => 8),
               'b' => array('bar' => 'bb', 'act' => 1, 'ber' => 8),
               'c' => array('bar' => 'cc', 'act' => 1, 'ber' => 7),
               'd' => array('bar' => 'dd', 'act' => 1, 'ber' => 1)
    );
    Ahoj, poradíte jak získat bez cyklu název klíče (c) když znám jen hodnotu (cc) prvku (bar) ? Děkuji

    Odpovědi

    Jendа avatar 6.4.2014 16:40 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP - Získání klíče z vnořeného pole podle hodnoty prvku
    To podle mě nepůjde. Vnořená pole fakt nejsou vhodná na vyhledávání. Tahle úloha si říká o binární strom.
    6.4.2014 16:50 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP - Získání klíče z vnořeného pole podle hodnoty prvku
    Možná by se k tomu účelu dala použít databáze, kde se takové operace dělají poměrně snadno.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    wamba avatar 6.4.2014 18:06 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PHP - Získání klíče z vnořeného pole podle hodnoty prvku
    asi by se dalo použít array_filter něco jako (psáno v Perl-u), kde je cyklus schován
    #!/usr/bin/perl
    use 5.010;
    
    my %a = (
        'a' => { 'bar' => 'aa', 'act' => 1, 'ber' => 8 },
        'b' => { 'bar' => 'bb', 'act' => 1, 'ber' => 8 },
        'c' => { 'bar' => 'cc', 'act' => 1, 'ber' => 7 },
        'd' => { 'bar' => 'dd', 'act' => 1, 'ber' => 1 },
    );
    
    say grep { $a{$_}{bar} eq 'cc' } keys %a;
    
    ale pravděpodobně bude nejschůdnější vytvořit nové asociativní pole, kde klíče budou hodnoty bar a hodnoty klíče a
    my %bar;
    foreach my $key ( keys %a ) {
        $bar{ $a{$key}{'bar'} } = $key;
    };
    
    say $bar{'cc'};
    
    omlouvám se za použití Perl-u v příkladech, ale PHP dostatečně neznám a bylo by to pro mě nesnadné. Doufám, že i tak je to pochopitelné.
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    7.4.2014 11:50 Lucius
    Rozbalit Rozbalit vše Re: PHP - Získání klíče z vnořeného pole podle hodnoty prvku
    uz jsem to tu psal u dotazu

    http://www.abclinuxu.cz/poradna/programovani/show/389582

    zhruba
    $source = array('aaa' => array('a' => 'a-aaa', 'b' => 'b-aaa'),
                        'bbb' => array('a' => 'a-bbb', 'b' => 'b-bbb'),
                        'ccc' => array('a' => 'a-ccc', 'b' => 'b-ccc'),
                        'ddd' => array('a' => 'a-ddd', 'b' => 'b-ddd'),
                        'eee' => array('a' => 'a-eee', 'b' => 'b-eee'));
    
    $output=''; // index pole pro nalezenou hodnotu
    $find = 'a-eee'; // hledana hodnota
    
    array_walk(array_keys($source),create_function('$value, $key,$param', 'in_array($param[1], $param[0][$value])? $param[2] = $value: "";'),array($source,$find,&$output)); 
    
    echo $output;
    
    ale je to trochu "pres ruku" a docela by me zajimalo proc neni mozne pouzit treba foreach ?

    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.