PHP simplexml addchild в элементе с атрибутами

1

Я новичок в php, и у меня нет ответа на google. Поэтому я надеюсь, что ты сможешь мне помочь.

Я хочу добавить ребенка в свой XML файл с помощью SimpleXML. Я думаю, что код говорит больше:

До

<data>
<categorie id="Search">
    <fav>
        <nom>Google</nom>
        <lien>www.google.fr</lien>
    </fav>
    <fav>
        <nom>Orange</nom>
        <lien>www.orange.fr</lien>
    </fav>
</categorie>
<categorie id="Social">
    <fav>
        <nom>Facebook</nom>
        <lien>www.facebook.com</lien>
    </fav>
</categorie>
</data>

После

<data>
<categorie id="Search">
    <fav>
        <nom>Google</nom>
        <lien>www.google.fr</lien>
    </fav>
    <fav>
        <nom>Orange</nom>
        <lien>www.orange.fr</lien>
    </fav>
</categorie>
<categorie id="Social">
    <fav>
        <nom>Facebook</nom>
        <lien>www.facebook.com</lien>
    </fav>
    <fav>
        <nom>Youtube</nom>
        <lien>www.youtube.com</lien>
    </fav>
</categorie>
</data>

Поэтому у меня нет никакой идеи добавить Youtube, например, в категорию "Социальный".

На данный момент я получаю результат формы в php.

$lien = $_POST['link'];
$nom = $_POST['name'];
$categorie = $_POST['cat'];

Спасибо за помощь!

  • 0
    Где ваш $sxe = new SimpleXMLElement($xmlstr) ?
  • 0
    Я прочитал документ, и я думаю, что это: $sxe = new SimpleXMLElement(../data/data.xml) и я думаю, что следующая строка будет $fav = $sxe->categorie->addChild('fav'); но не работает!
Показать ещё 1 комментарий
Теги:

1 ответ

1
Лучший ответ

Я нашел решение

$xml = simplexml_load_file('../data/data.xml');
$fav = $xml->categorie[0]->addChild("fav"," ");
$fav->addChild("link","toto");
$fav->addChild("desc","tutu");

$xml->asXML('../data/data.xml');

Ещё вопросы

Сообщество Overcoder
Наверх
Меню