Эхо XML-узел CDATA с использованием SimpleXML

У меня есть файл XML в этом формате:

            <definitions>
<group name="skin">
<string name="string_name"><![CDATA[String Name]]></string>
</group>
</definitions>

Я не могу понять, как получить имя строки для вывода, пройдя через определения> group> string, можно ли выбрать по строке name = «xxx» или только по строке?

            <?php
if (file_exists('definitions.xml')) {
$xml = simplexml_load_file('definitions.xml');
echo (string) $xml->string;
} else {
exit('Failed to open');
}
?>

-1

Решение

Вы не используете правильный синтаксис для доступа к string узел; $xml эквивалентно верхнему узлу, definitionsтак что вам нужно получить доступ $xml->group->string чтобы получить содержимое string узел:

echo (string)$xml->group->string;

Выход:

String Name

К вашему сведению, вы можете распечатать содержимое узла без приведения его в виде строки:

echo $xml->group->string;
0

Другие решения

Других решений пока нет …