В течение жизни я не могу найти информацию о том, как использовать SimpleXML для синтаксического анализа со специальными символами.Escape символов для PHP и SimpleXML
У меня есть XML Я пытаюсь разобрать, но PHP явно не нравится:
<?xml version="1.0" encoding="UTF-8"?>
<calendar-multiget xmlns:D="DAV:" xmlns="urn:ietf:params:xml:ns:caldav">
<D:prop>
<D:getetag/>
<calendar-data/>
</D:prop>
<D:href>/davical/caldav.php/rwr26/home/c9bfc6b0-064e-4316-83fe-753db34e67ee.ics</D:href>
<D:href>/davical/caldav.php/rwr26/home/4e6e3500e89673.63357057.ics</D:href>
<D:href>/davical/caldav.php/rwr26/home/4e6e42d394f9e5.08299254.ics</D:href>
</calendar-multiget>
Я не могу сделать $D:href = new SimpleXMLElement($xmlstr);
. И XPath тоже не доволен этим, полагая, что я делаю это правильно. Может ли кто-нибудь указать, что я здесь делаю неправильно?
Вы не можете использовать специальные символы в ваших имен переменных, но не нужно. Можете ли вы подробнее объяснить, что вы пытаетесь сделать? –
Я пытаюсь получить информацию, содержащуюся между тегами. Я не могу изменить сам XML, поскольку он является частью ответа CalDav с сервера Davical. –
user978122
Покажите нам немного больше, используя SimpleXMLElement, чтобы проанализировать пример и где вы столкнулись с проблемами и сообщениями, которые вы получаете. Я собираюсь предположить, что двоеточие в '$ D: href' ошибочно ре: PHP счастье. http://www.php.net/manual/en/language.variables.basics.php – dlamblin