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

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 0
    dnes 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    dnes 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 2
    dnes 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze

    Byla vydána nová verze 1.54.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Jan Václav.

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Knižní edice správce české národní domény přináší novou knihu zkušeného programátora Pavla Tišnovského s názvem Programovací jazyk Go. Publikace nabízí srozumitelný a prakticky zaměřený pohled na programování v tomto moderním jazyce. Nejedná se však o klasickou učebnici, ale spíše o průvodce pro vývojáře, kteří s Go začínají, nebo pro ty, kdo hledají odpovědi na konkrétní otázky či inspiraci k dalšímu objevování. Tištěná i digitální verze knihy je již nyní k dispozici u většiny knihkupců.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | IT novinky

    OpenAI zpřístupnila (en) nové nenáročné otevřené jazykové modely gpt-oss (gpt-oss-120b a gpt-oss-20b). Přístupné jsou pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 6
    včera 04:33 | Nová verze

    Byla vydána RC verze openSUSE Leap 16. S novým instalátorem Agama, Xfce nad Waylandem a SELinuxem.

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

    Google Chrome 139 byl prohlášen za stabilní. Nejnovější stabilní verze 139.0.7258.66 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 12 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře. S verzí 139 přestal být podporován Android 8.0 (Oreo) a Android 9.0 (Pie).

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (37%)
     (25%)
     (5%)
     (7%)
     (3%)
     (1%)
     (2%)
     (21%)
    Celkem 256 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.

    23.3.2014 20:37 Marián
    PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Přečteno: 307×
    Ahoj, mám ještě jeden dotaz ohledně tohoto pole
         $array = 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-ccc', 'b' => 'b-eee'));
    Zkouším získat klíč podle zadaného údaje, Zkoušel jsem to
    echo array_search('a-bbb', $array);
    i takto
    echo array_search('a-bbb', array($array));
    ale vůbec nic mi nejde. Poradí někdo? Díky

    Odpovědi

    23.3.2014 20:51 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Proč si ho raději nevytáhneš z databáze?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    23.3.2014 22:53 Marián
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    To jsem zkoušel, ale taky to nejde...
         $stmt = $db->prepare('SELECT key FROM table WHERE co = ?;');
         $stmt->execute(array('a-aaa'));
         $status = $stmt->fetch();
         echo $status['key'];
    
    zkoušel jsem i tohle
         $stmt = $db->prepare('SELECT key FROM table WHERE co = ?;');
         $stmt->execute(array('a-aaa'));
         $status = $stmt->fetchColumn();
         echo $status['key'];
    
    ale taky nic. Když dám var_dump($status); tak to vrací jen "bool(false)". Když dám místo key hvězdičku, tak to funguje...

    Vydí tam někdo nějakou chybu? Díky
    23.3.2014 23:33 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Skutečně se ten sloupeček v databázi jmenuje "key"? Proč vlastně hledáš klíč podle hodnoty a ne obráceně? Mám takové tušení, že ten návrh aplikace máš zcela špatně.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    24.3.2014 01:40 Marián
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Ano, opravdu se jmenuje "key". Pokud zadám místo "key" "*" tak to funguje :-( Klíč hledám podle hodnoty proto, jelikož znám daný kousek české url ale neznám fyzicky us název souboru.
    Jendа avatar 24.3.2014 01:45 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    No a když to napíšeš přímo do konzole databázového serveru, tak to něco vrátí?
    24.3.2014 11:34 Marián
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Ano vrátí to chybu:

    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key FROM define WHERE co = a-aaa' at line 1

    ale žádnou chybu nevidím..
    24.3.2014 12:13 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    key je nevhodné označení sloupce rezervovaným slovem - zadej `key` .
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    24.3.2014 13:51 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.

    Toto je přesně případ, proč raději vše uvozovkuji, těmi uvozovkami, které dané entitě v daném DBE přísluší. minimálně je třeba použít lepší názvy, tedy key doplnit o to co je to za key, třeba userLoginKey nebo book_category_key .

    Uvozovkování předchází i problému, kde se vytvoří nové rezervované slovo, ale zas to pro někoho znepřehledňuje dotazy.

    Zadej 'SELECT `key` FROM `table` WHERE `co` = ?;' (pro MySQL) a už to pojede
    (Pro PostgreSQL by to bylo něco jako: 'SELECT "key" FROM "table" WHERE "co" = ?;',
    pro M$SQL myslím něco jako 'SELECT [key] FROM [table] WHERE [co] = ?;').

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Jendа avatar 23.3.2014 21:17 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Protože array_search() nejde do hloubky. Zkusil bych něco jako
    foreach a in $array {
      echo array_search('a-bbb', $a);
    }
    (pseudokód)

    Pro víc polí to bude pomalé, pak bych asi uvažoval o nějaké vhodnější struktuře (strom, hashtable).
    26.3.2014 12:56 Lucius
    Rozbalit Rozbalit vše Re: PHP - Jak vrátit key z vnořeného pole podle známé hodnoty.
    Pokud jde o index toho vnejsiho pole tak nejak takto by to melo jit:
    $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;

    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.