(.)(.) Сиськеее...
С нами с 20.05.03
Сообщения: 2598
Рейтинг: 2651
|
Добавлено: 03/12/10 в 00:11 |
Мне необходим скрипт выборочного извлечения данных из xml.
Многое из фришного в инете тащит из xml все данные подряд, от начала и до конца, но это не то что мне надо. Пытался сам переделать фришные скрипты, но понял что лучше обратиться к профи.
Отблагодарю финансово (в разумных пределах конечно же... )
Обращайтесь в аську или в ПМ пожалуйста.
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 03/12/10 в 00:58 |
возможно поможет функция:
Код: [развернуть] | function GetXMLTree($data) {
$xml_parser = xml_parser_create();
xml_parse_into_struct($xml_parser, $data, $vals, $index);
xml_parser_free($xml_parser);
$items = array();
$level = 0;
$parents = array();
$items[0] = '';
$parents[] = &$items[0];
foreach ($vals as $xml_elem)
{
if ($xml_elem['type'] == 'open')
{
if($level>0 && array_key_exists('children',$parents[$level-1]))
{
$SubLevel = count($parents[$level-1]['children']);
}
else
{
$SubLevel = 0;
}
$cChild = 0;
$parents[$level] = &$parents[$level-1]['children'][$SubLevel];
$parents[$level]['name'] = strtolower($xml_elem['tag']);
$parents[$level]['type'] = 'complete';
$parents[$level]['value'] = 'value';
$level++;
if(array_key_exists('attributes',$xml_elem))
{
$parents[$level-1]['attributes'] = $xml_elem['attributes'];
}
}
if($xml_elem['type'] == 'complete')
{
$parents[$level-1]['children'][$cChild]['name'] = strtolower($xml_elem['tag']);
$parents[$level-1]['children'][$cChild]['type'] = 'complete';
$parents[$level-1]['children'][$cChild]['value'] = $xml_elem['value'];
if(array_key_exists('attributes',$xml_elem))
{
$parents[$level-1]['children'][$cChild]['attributes'] = $xml_elem['attributes'];
}
$cChild++;
}
if($xml_elem['type'] == 'close')
{
$level--;
}
}
return $parents[0];
} |
|
|
|
|
php
С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410
|
Добавлено: 03/12/10 в 02:27 |
|
|
|
|
(.)(.) Сиськеее...
С нами с 20.05.03
Сообщения: 2598
Рейтинг: 2651
|
Добавлено: 03/12/10 в 08:27 |
LeadFarmer-у спасибо! Очень выручил.
Остальным тоже спасибо, но не помогло...
Всех плюсанул.
|
|
|
|
Текстовая реклама в форме ответа Заголовок и до четырех строчек текста Длина текста до 350 символов Купить рекламу в этом месте! |