RSSSimpleXMLElement.php in Facebook Instant Articles 7.2
Same filename and directory in other branches
Namespace
Drupal\fb_instant_articles_rssFile
modules/fb_instant_articles_rss/src/RSSSimpleXMLElement.phpView source
<?php
/**
 * @file
 * Contains \Drupal\fb_instant_articles_rss\RSSSimpleXMLElement.
 */
namespace Drupal\fb_instant_articles_rss;
/**
 * Extension for SimpleXMLElement.
 *
 * Class RSSSimpleXMLElement
 * @package Drupal\fb_instant_articles_rss
 */
class RSSSimpleXMLElement extends \SimpleXMLElement {
  /**
   * Adds CDATA text in a node.
   *
   * @param string $cdata_text
   *   The CDATA value to add.
   */
  private function addCdata($cdata_text) {
    $node = dom_import_simplexml($this);
    if (($no = $node->ownerDocument) && is_string($cdata_text)) {
      $node
        ->appendChild($no
        ->createCDATASection($cdata_text));
    }
  }
  /**
   * Creates a child with CDATA value.
   *
   * @param string $name
   *   The name of the child element to add.
   * @param string $cdata_text
   *   The CDATA value of the child element.
   *
   * @return object
   *   The child element.
   */
  public function addChildCdata($name, $cdata_text) {
    $child = $this
      ->addChild($name);
    $child
      ->addCdata($cdata_text);
    return $child;
  }
  /**
   * Adds SimpleXMLElement code into a SimpleXMLElement.
   *
   * @param \SimpleXMLElement $append
   *   XMLElement to append to.
   */
  public function appendXml(\SimpleXMLElement $append) {
    if ($append) {
      if (strlen(trim((string) $append)) == 0) {
        $xml = $this
          ->addChild($append
          ->getName());
        foreach ($append
          ->children() as $child) {
          $xml
            ->appendXml($child);
        }
      }
      else {
        $xml = $this
          ->addChild($append
          ->getName(), (string) $append);
      }
      foreach ($append
        ->attributes() as $n => $v) {
        $xml
          ->addAttribute($n, $v);
      }
    }
  }
}Classes
| 
            Name | 
                  Description | 
|---|---|
| RSSSimpleXMLElement | Extension for SimpleXMLElement. |