loadXML() публичный Метод

load xml from url
С версии: 3.0.0
public loadXML ( string $url = null, boolean $assoc = true ) : Reader
$url string
$assoc boolean
Результат Reader
Пример #1
0
 /**
  * render
  *
  * @since 3.0.0
  *
  * @param string $url
  * @param array $optionArray
  *
  * @return string
  */
 public static function render($url = null, $optionArray = [])
 {
     $counter = 0;
     $output = null;
     /* html elements */
     $titleElement = new Html\Element();
     $titleElement->init('h3', ['class' => self::$_configArray['className']['title']]);
     $linkElement = new Html\Element();
     $linkElement->init('a', ['target' => '_blank']);
     $boxElement = new Html\Element();
     $boxElement->init('div', ['class' => self::$_configArray['className']['box']]);
     /* load result */
     $reader = new Reader();
     $result = $reader->loadXML($url)->getObject();
     $result = $result->entry ? $result->entry : $result->channel->item;
     /* process result */
     if ($result) {
         foreach ($result as $value) {
             if ($counter++ < $optionArray['limit']) {
                 $linkElement->attr('href', $value->link->attributes()->href ? $value->link->attributes()->href : $value->link)->text($value->title);
                 /* collect output */
                 $output .= $titleElement->html($linkElement) . $boxElement->text($value->summary ? $value->summary : $value->description);
             }
         }
     } else {
         self::setNotification('error', Language::get('url_incorrect') . Language::get('point'));
     }
     return $output;
 }
Пример #2
0
 /**
  * testConvertToJSON
  *
  * @since 3.0.0
  */
 public function testConvertToJSON()
 {
     /* setup */
     $reader = new Reader();
     $reader->loadXML('tests/provider/reader.xml');
     /* actual */
     $actual = $reader->getJSON();
     /* compare */
     $this->assertString($actual);
 }
Пример #3
0
 /**
  * adminPanelNotification
  *
  * @since 3.0.0
  *
  * @return array
  */
 public static function adminPanelNotification()
 {
     /* load result */
     $urlBase = self::$_configArray['url'] . Registry::get('root') . '/' . Registry::get('parameterRoute') . Registry::get('fullRoute');
     $urlXML = $urlBase . '&out=xml';
     $reader = new Reader();
     $result = $reader->loadXML($urlXML)->getObject();
     /* process result */
     foreach ($result as $value) {
         $type = $value->attributes()->type ? (string) $value->attributes()->type : $value->getName();
         if (in_array($type, self::$_configArray['typeArray'])) {
             $message = ['text' => (string) $value->message, 'attr' => ['href' => $urlBase, 'target' => '_blank']];
             self::setNotification($type, $message);
         }
     }
     return self::getNotification();
 }