Тема: xml 2 db
Показать сообщение отдельно
Старый 09.09.2005, 18:47
Artem Brigert вне форума Посмотреть профиль Найти все сообщения от Artem Brigert
  № 20  
Ответить с цитированием
Artem Brigert
Banned

Регистрация: Sep 2001
Сообщений: 6,162
nu wed esli ubrat <a href > to eto

PHP код:
<?php
$file 
'n1840411967.txt';
$stack = array();

function 
startTag($parser$name$attrs)
{
   global 
$stack;
   
$tag=array("name"=>$name,"attrs"=>$attrs); 
   
array_push($stack,$tag);
 
}

function 
cdata($parser$cdata)
{
   global 
$stack,$i;
  
   if(
trim($cdata))
   {   
       
$stack[count($stack)-1]['cdata']=$cdata;   
   }
}

function 
endTag($parser$name)
{
   global 
$stack
   
$stack[count($stack)-2]['children'][] = $stack[count($stack)-1];
   
array_pop($stack);
}

$xml_parser xml_parser_create();
xml_set_element_handler($xml_parser"startTag""endTag");
xml_set_character_data_handler($xml_parser"cdata");

$data xml_parse($xml_parser,file_get_contents($file));
if(!
$data) {
   die(
sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}

xml_parser_free($xml_parser);

print(
"<pre>\n");
print_r($stack);
print(
"</pre>\n");
?>
rabotaet