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 15:55 | Komunita

    O víkendu (15:00 až 23:00) probíha EmacsConf 2025, tj. online konference vývojářů a uživatelů editoru GNU Emacs. Sledovat ji lze na stránkách konference. Záznamy budou k dispozici přímo z programu.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Komunita

    Provozovatel internetové encyklopedie Wikipedia jedná s velkými technologickými firmami o uzavření dohod podobných té, kterou má s Googlem. Snaží se tak zpeněžit rostoucí závislost firem zabývajících se umělou inteligencí (AI) na svém obsahu. Firmy využívají volně dostupná data z Wikipedie k trénování jazykových modelů, což zvyšuje náklady, které musí nezisková organizace provozující Wikipedii sama nést. Automatické programy

    … více »
    Ladislav Hagara | Komentářů: 11
    včera 15:22 | IT novinky

    Evropská komise obvinila síť 𝕏 z porušení unijních pravidel, konkrétně nařízení Evropské unie o digitálních službách (DSA). Vyměřila jí za to pokutu 120 milionů eur (2,9 miliardy Kč). Pokuta je podle názoru amerického ministra zahraničí útokem zahraničních vlád na americký lid. K pokutě se vyjádřil i americký viceprezident: „EU by měla podporovat svobodu projevu, a ne útočit na americké společnosti kvůli nesmyslům“.

    Ladislav Hagara | Komentářů: 8
    5.12. 17:11 | IT novinky

    Společnost Jolla spustila kampaň na podporu svého nového telefonu Jolla Phone se Sailfish OS. Dodání je plánováno na první polovinu příštího roku. Pokud bude alespoň 2 000 zájemců. Záloha na telefon je 99 €. Cena telefonu v rámci kampaně je 499 €.

    Ladislav Hagara | Komentářů: 24
    5.12. 15:11 | IT novinky

    Netflix kupuje Warner Bros. včetně jejích filmových a televizních studií HBO Max a HBO. Za 72 miliard dolarů (asi 1,5 bilionu korun).

    Ladislav Hagara | Komentářů: 2
    5.12. 14:11 | IT novinky

    V Las Vegas dnes končí pětidenní konference AWS re:Invent 2025. Společnost Amazon Web Services (AWS) na ní představila celou řadu novinek. Vypíchnout lze 192jádrový CPU Graviton5 nebo AI chip Trainium3.

    Ladislav Hagara | Komentářů: 0
    5.12. 00:33 | Nová verze

    Firma Proxmox vydala novou serverovou distribuci Datacenter Manager ve verzi 1.0 (poznámky k vydání). Podobně jako Virtual Environment, Mail Gateway či Backup Server je založená na Debianu, k němuž přidává integraci ZFS, webové administrační rozhraní a další. Datacenter Manager je určený ke správě instalací právě ostatních distribucí Proxmox.

    |🇵🇸 | Komentářů: 9
    4.12. 23:44 | Nová verze

    Byla vydána nová verze 2.4.66 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 5 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    4.12. 14:00 | IT novinky

    Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.

    Ladislav Hagara | Komentářů: 0
    4.12. 04:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (48%)
     (19%)
     (17%)
     (22%)
     (15%)
     (24%)
     (16%)
     (18%)
    Celkem 435 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    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: 251×
    $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.