[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: php + xml
zikworld
Добрый вечер.
Есть хмл файл



<title>
<name
id="1">
Киев
</name>

<name
id="2">
Москва
</name>
</title>


не пойму как достать ИМЯ (Киев) при заданном его id = 1 например




Спустя 1 час, 56 минут, 28 секунд (18.04.2012 - 21:48) ИНСИ написал(а):
Можешь так попробовать

$content = 'тут XML файл';

$Xml = new DomDocument();
$Xml->loadXML($content);

$XPath = new DOMXPath($Xml);
$Nodes = $XPath->query('//*/Name[@ID="1"]');

// Вдруг не сможешь сам вытащить :)
foreach($Nodes as $Node) {
echo $Node->getElementsByTagName('Value')->item(0);
}

Спустя 3 дня, 18 часов, 58 минут, 9 секунд (22.04.2012 - 16:46) zikworld написал(а):
нашел функцию такую

$file = "0000-0099.xml";
$xml_parser = xml_parser_create();



function startElement($parser, $name, $attrs) {
foreach ($attrs as $attr => $value) {
// выводим имя атрибута и его значение
echo ''.$attr.' = '.$value.'<br>';
}
}



xml_set_character_data_handler($xml_parser, "stringElement");

function stringElement($parser, $str) {
if (strlen(trim($str)) > 0) {
echo ''.$str.'<br>'; // выводим строку
}
}



xml_set_element_handler($xml_parser, "startElement", "");

//==============================================================
$fp = fopen($file, "r");

while ($data = fgets($fp)) {
xml_parse($xml_parser, $data, feof($fp));
}

xml_parser_free($xml_parser);


выводит все содержимое файла xml на экран браузера...отличная функция, но я не пойму как сделать что бы выводила не все содержимое а только все что под "id=2"

Спустя 2 часа, 11 минут, 36 секунд (22.04.2012 - 18:58) ИНСИ написал(а):
Так я же написал тебе решение твоей задачи
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.