SAML2\XML\saml\NameIDType::toXML PHP Method

toXML() public method

Convert this NameIDType to XML.
public toXML ( DOMElement $parent = null ) : DOMElement
$parent DOMElement
return DOMElement The XML element after adding the data corresponding to this NameIDType.
    public function toXML(\DOMElement $parent = null)
    {
        assert('is_string($this->Format) || is_null($this->Format)');
        assert('is_string($this->SPProvidedID) || is_null($this->SPProvidedID)');
        assert('is_string($this->value)');
        $element = parent::toXML($parent);
        if ($this->Format !== null) {
            $element->setAttribute('Format', $this->Format);
        }
        if ($this->SPProvidedID !== null) {
            $element->setAttribute('SPProvidedID', $this->SPProvidedID);
        }
        $value = $element->ownerDocument->createTextNode($this->value);
        $element->appendChild($value);
        return $element;
    }

Usage Example

Example #1
0
 /**
  * Convert this Issuer to XML.
  *
  * @param \DOMElement|null $parent The element we should append to.
  *
  * @return \DOMElement The current Issuer object converted into a \DOMElement.
  */
 public function toXML(\DOMElement $parent = null)
 {
     if ($this->Format !== Constants::NAMEID_ENTITY) {
         return parent::toXML($parent);
     }
     /*
      * From saml-core-2.0-os 8.3.6, when the entity Format is used: "The NameQualifier, SPNameQualifier, and
      * SPProvidedID attributes MUST be omitted."
      */
     if ($parent === null) {
         $parent = DOMDocumentFactory::create();
         $doc = $parent;
     } else {
         $doc = $parent->ownerDocument;
     }
     $element = $doc->createElementNS(Constants::NS_SAML, 'saml:Issuer');
     $parent->appendChild($element);
     $value = $element->ownerDocument->createTextNode($this->value);
     $element->appendChild($value);
     return $element;
 }