<?php

class Parser {
  
  private $url;
  private $parent;
  public $date;

  
  function __construct ($url)
  {
    $this->url = $url;
  }
  
  private function getArray () 
  {
    $xml = simplexml_load_file($this->url, 'SimpleXMLElement', LIBXML_NOCDATA);
    return json_decode(json_encode((array)$xml), 1);
  }
  
  public function init () 
  {
    return $this->getArray();
  }

  public function DateInMODX ()
  {
    $date = $this->init();
    
    
     

    foreach ($date['Ad'] as $value) 
    {
      switch($value['Category'])
      {
        case "Дома, дачи, коттеджи":
          $parent = 8;

        break;
        case "Квартиры":
          $parent = 3;
        break;
        case "Земельные участки":
          $parent = 9;
           $area = $modx->runProcessor('resource/create', array(
             'createdby' => $modx->user->get('id'),
             'parent' => $parent,
             'template' => 11,
             'published' => 1,
             'publishedon' => DateTime::createFromFormat('Y-m-d', $date),
             'hidemenu' => 1,
             'pagetitle' => $value['Street'],
             'tv40' => $value['Id'],
             'tv41' =>  $value['Price'],
             'tv35' => $value['Description'],
             'tv39' => $value['Images']['Image'][0]['@attributes']['url'],
             'tv37' => $value['Images']['Image'][1]['@attributes']['url'],
             'tv38' => $value['Images']['Image'][2]['@attributes']['url'],
             'tv39' => $value['Images']['Image'][3]['@attributes']['url'],
            
           ));
        break;
      }

    }

  }

}

$let = new Parser('https://base.kvartus.ru/reklama/xml/base/14150/avito.xml');

print_r($let->DateInMODX());