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 04:33 | Nová verze

    Open source software pro úpravu digitálních fotografií LightZone (Wikipedie) byl vydán v nové verzi 5.0.0. LightZone je dnes k dispozici pod licencí BSD. Původně se jednalo o proprietární software vyvíjený společností Light Crafts. Ta v prosinci 2012 souhlasila s uvolněním zdrojových kódů jako open source [Wayback Machine].

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Byla vydána verze 0.84 telnet a ssh klienta PuTTY (Wikipedie). Podrobnosti v přehledu nových vlastností a oprav chyb a Change Logu.

    Ladislav Hagara | Komentářů: 0
    22.5. 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    22.5. 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    22.5. 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 5
    22.5. 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 8
    22.5. 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    21.5. 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1696 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: PHP XML vlozenie elementu za lastChild

    20.9.2015 19:23 maros
    PHP XML vlozenie elementu za lastChild
    Přečteno: 269×
    Mám existujúci XML súbpr, kde potrebujem cez PHP pridať doplniť [data] za posledný child, čo je v tomto prípade tretí element. Návody, čo som našiel pridávali element na koniec celého XML.

    [root]
      [level1]
        ...
        [level2]
          ...
          [level3]
           ...
          
            [data]
              [name/]
              [address/]
            [/data]
            
            [data]
              [name/]
              [address/]
            [/data]
            
            [data]
              [name/]
              [address/]
            [/data]
            
          [/level3]
           ...
        [/level2]
          ...
      [/level1]
        ...        
    [/root]
    

    Odpovědi

    xxxxxx avatar 20.9.2015 20:53 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: PHP XML vlozenie elementu za lastChild
    Tak třeba s DOMDocument by to mělo jít úplně v pohodě, najdete si element level3, vytvoříte si nový element a append k tomu level3 (appendChild). Mrkněte dolů do poznámek k téhle třídě, je tam pěkná ukázka.
    21.9.2015 20:09 maros
    Rozbalit Rozbalit vše Re: PHP XML vlozenie elementu za lastChild
    Ako si nájdem level3?

    Na internete je plno manuálov, ktoré sú presne ako tento kód nižšie:
    $xml = simplexml_load_file($XML_FILE);  
    
    if ($xml != FALSE) {  
     $level3_node = $xml->level3;  
     $data_node   = $level3_node->addChild("data", "");  
     $data_node->addChild("name");  
    
     $xml->asXML($XML_FILE);
    }
    
    Mne to skončí varovaním a chybou:
    Warning: SimpleXMLElement::addChild(): Cannot add child. Parent is not a permanent member of the XML tree in xml.php on line 5
    Fatal error: Call to a member function addChild() on a non-object in xml.php on line 6
    
    21.9.2015 20:55 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP XML vlozenie elementu za lastChild
    Máš nějakou představu, co asi dělá následující řádek?
    $level3_node = $xml->level3;
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    21.9.2015 22:11 maros
    Rozbalit Rozbalit vše Re: PHP XML vlozenie elementu za lastChild
    Problém bol v tom, že v dokumente, ktorý je omnoho zložitejší ako príklad v prvom príspevku, je tag level3 viackrát, s čím som vôbec nepočítal.
    Potom $level3_node = $xml->level3 vracia prázdny objekt.
    Vyzerá to tak, že musí použiť XPath, alebo máte iný názor?
    21.9.2015 23:01 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP XML vlozenie elementu za lastChild
    Nevrací objekt, ale kolekci. Obvykle stačí použít index do té kolekce.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    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.