Изменение узла xml в php

225
03 октября 2018, 15:00

Есть xml вида

<users>
<user>
<login>123456</login>
<password>e10adc3949ba59abbe56e057f20f883eu4h3f7h4387hfqp</password>
<email>123456</email>
<name>d</name>
<key></key>
</user>
</users>

Узел key создан строкой

$key_xml = $user_xml->appendChild($xml->createElement('key'));

Я бы мог обратиться к узлу и записать в него через

$key_xml->appendChild($xml->createTextNode(null));

но записывать мне нужно в другом файле php. Как обратиться к узлу и записать/перезаписать в него что то?

Ах да, и нужно не просто обратиться к узлу, их будет много, и нужно обратиться к соответствующему, который входит в подмножество допустим с задаваемым емейлом.

$key_xml = $xml->xpath("//user[login = $login]/key") = 0;

Это работает отлично в случае поиска значения, при попытке записи "=0" выдает Fatal error: Can't use method return value in write context in.

$key_xml = $xml->xpath("//user[login = $login]/key");
$key_xml[0] = 'qqq'; $xml->formatOutput = true;
$xml->save('users.xml');

не работает и выводит Fatal error: Call to undefined method SimpleXMLElement::save()

READ ALSO
Функция для вывода значений, по цепочке ключей многомерного массива

Функция для вывода значений, по цепочке ключей многомерного массива

Хочу немного упростить функцию для вывода значений из многомерного массиваДопустим есть некий массив

233
Error in processing request Error code: 500 Error text: Internal Server Error

Error in processing request Error code: 500 Error text: Internal Server Error

В phpMyAdmin если хочу перейти в Import/Export выдает ошибку: Error in processing request Error code: 500 Error text: Internal Server Error Система - Ubuntu 1804

315
Default email queue не работает после использования php artisan queue:work

Default email queue не работает после использования php artisan queue:work

Хочу использовать default queue для почты, для этого как сказано в ларавел документации

233
Как вывести записи со срезам по дням

Как вывести записи со срезам по дням

Есть таблица users , в ней ячейка date тип - DATETIME

263