getXmlWriter(); $element = $this->getElement(); if (!$element instanceof SDTElement) { return; } $type = $element->getType(); $listItems = $element->getListItems(); $this->startElementP(); $xmlWriter->startElement('w:sdt'); $xmlWriter->startElement('w:sdtPr'); $xmlWriter->writeElementBlock('w:id', 'w:val', rand(100000000, 999999999)); $xmlWriter->writeElementBlock('w:lock', 'w:val', 'sdtLocked'); $xmlWriter->startElement('w:placeholder'); $xmlWriter->writeElementBlock('w:docPart', 'w:val', 'string'); $xmlWriter->endElement(); // w:placeholder $xmlWriter->startElement("w:{$type}"); foreach ($listItems as $key => $val) { $xmlWriter->writeElementBlock('w:listItem', array('w:value' => $key, 'w:displayText' => $val)); } $xmlWriter->endElement(); // w:{$type} $xmlWriter->endElement(); // w:sdtPr $xmlWriter->startElement('w:sdtContent'); $xmlWriter->endElement(); // w:sdtContent $xmlWriter->endElement(); // w:sdt $this->endElementP(); // w:p } }