как насчет любой идеи, как сделать для этой части?
Вы хотите значение атрибута, а не тега (который является пустым).Вы можете получить доступ к атрибутам с синтаксисом массива, например:
echo $docsnode['value'];
или вы можете использовать метод attributes
, например:
$attrs = $docsnode->attributes();
echo $attrs['value'];
.in; -)
поэтому я прав, если скажу, что для <docs:publish value="true"/>
echo
$docs['publish']
Нет, это пространство имен, которое вы должны получить в тех, кто использует *Метод 1022 * или с xpath (если они не находятся в пространстве имен документа по умолчанию, но эти узлы отсутствуют) ...
$ns = $xml->getNamespaces();
$docs = $xml->children($ns['docs']);
echo $docs->publish['value'];
echo $docs->publishAuto['value'];
ИЛИ
$docs = $xml->xpath('//docs:*');
echo $docs->publish['value'];
echo $docs->publishAuto['value'];
Таким образом, ваш код должен выглядеть примерно такэто:
$ns = $feed->getNamespaces();
foreach($feed->entries as $entry)
{
$docs = $entry->children($ns['docs']);
$result = $docs->publish['value'];
}