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í
×
    včera 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

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

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

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

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

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

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 7
    včera 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 1
    včera 04:11 | Nová verze

    Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    17.11. 18:00 | Nová verze

    VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).

    Ladislav Hagara | Komentářů: 0
    17.11. 03:11 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.

    Ladislav Hagara | Komentářů: 2
    17.11. 02:33 | IT novinky

    U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.

    Ladislav Hagara | Komentářů: 0
    16.11. 19:33 | Nová verze

    Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (16%)
     (16%)
    Celkem 367 hlasů
     Komentářů: 16, poslední 12.11. 18:21
    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: 239×
    $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.