ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

XML parser
  #1  
Старый 19.03.2008, 11:12
Аватар для heks
heks
Постоянный
Регистрация: 24.08.2007
Сообщений: 474
Провел на форуме:
1484154

Репутация: 126
Отправить сообщение для heks с помощью ICQ
По умолчанию XML parser

может кому понадобится

<?php
function xml2array($elements_string)
{
$xml_array = array();
$elements_regex = '/<(\w+)\s*([^\/>]*)\s*(?:\/>|>(.*?)<(\/\s*\1\s*)>)/s';
$attributes_regex = '/(\w+)=(?:"|\')([^"\']*)(:?"|\')/';
preg_match_all ($elements_regex, $elements_string, $elements_array);
foreach ( $elements_array[1] as $e_key => $e_value )
{
$xml_array[$e_key]["name"] = $e_value;
if ( ($attributes_string = trim($elements_array[2][$e_key])) )
{
preg_match_all($attributes_regex, $attributes_string, $attributes_array);
foreach ( $attributes_array[1] as $a_key => $a_value )
{
$xml_array[$a_key]["attributes"][$a_value] = $attributes_array[2][$a_key];
}
}
if ( ($p = strpos($elements_array[3][$e_key], "<")) > 0 )
{
$xml_array[$e_key]["text"] = substr($elements_array[3][$e_key], 0, $p - 1);
}
if ( preg_match($elements_regex, $elements_array[3][$e_key]) )
{
$xml_array[$e_key]["elements"] = xml2array($elements_array[3][$e_key]);
}
else if ( isset($elements_array[3][$e_key]) )
{
$xml_array[$e_key]["text"] = $elements_array[3][$e_key];
}
$xml_array[$e_key]["closetag"] = $elements_array[4][$e_key];
}
return $xml_array;
}
$xml = xml2array(file_get_contents("./news.xml"));
print_r($xml);
?>
 
Ответить с цитированием

  #2  
Старый 19.03.2008, 15:27
Аватар для Isis
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нифига не пойму как импортить xml cvip SЕО - тонкости, методы раскрутки 2 05.03.2008 04:01
Xml и зависание главной формы Student :) С/С++, C#, Delphi, .NET, Asm 8 03.03.2008 18:11
Parser 3 - Язык программирования it's my Болталка 11 21.02.2008 01:30



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ