şimdi ben aşağıdaki kodlar ile 2 farklı xml alıyorum.( sadece içerik farkı var node'lar ve diğerleri aynı )

   <?php

function ayikla($__url)
{
    $xml_values = array();
    $contents = file_get_contents($__url);
    $parser = xml_parser_create('');
    if(!$parser)
        return false;

    xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, 'UTF-8');
    xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
    xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);
    xml_parse_into_struct($parser, trim($contents), $xml_values);
    xml_parser_free($parser);
    if (!$xml_values)
        return array();
   
    $xml_array = array();
    $last_tag_ar =& $xml_array;
    $parents = array();
    $last_counter_in_tag = array(1=>0);
    foreach ($xml_values as $data)
    {
        switch($data['type'])
        {
            case 'open': 
                $last_counter_in_tag[$data['level']+1] = 0;
                $new_tag = array('name' => $data['tag']);
                if(isset($data['attributes']))
                    $new_tag['attributes'] = $data['attributes'];
                if(isset($data['value']) && trim($data['value']))
                    $new_tag['value'] = trim($data['value']);
                $last_tag_ar[$last_counter_in_tag[$data['level']]] = $new_tag;
                $parents[$data['level']] =& $last_tag_ar;
                $last_tag_ar =& $last_tag_ar[$last_counter_in_tag[$data['level']]++];
                break;

            case 'complete':
               $new_tag = array('name' => $data['tag']); 
                if(isset($data['attributes']))
                    $new_tag['attributes'] = $data['attributes'];
                if(isset($data['value']) && trim($data['value']))
                    $new_tag['value'] = trim($data['value']);

                $last_count = count($last_tag_ar)-1;
                $last_tag_ar[$last_counter_in_tag[$data['level']]++] = $new_tag;
                break;

            case 'close':
                $last_tag_ar =& $parents[$data['level']];
                break;
            default:
                break;
        }
    }
    return $xml_array;
}

 $url = $_POST['url'];
	
 $arr   = ayikla('deneme.xml');  // Veritabanındaki XML
 $arr2 = ayikla($url); //  Url'den gelen XML
 


 print_r('<hr>');
 print_r($arr); 
 print_r('<hr>');

  print_r($arr2);
  print_r('<hr>');
?>
Amacım bu verilerden ulr'den gelen xml'deki verileri veritabanındaki veriler ile karşılaştırmak.değişiklik olmuşsa bunu bildirmek.
Nasıl yapabilirim.Sabahdan beri uğraşıyorum

Teşekkürler iyi çalışmalar.