getParentWriter()->getUseDiskCaching()) { $objWriter = new PHPWord_Shared_XMLWriter(PHPWord_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); } else { $objWriter = new PHPWord_Shared_XMLWriter(PHPWord_Shared_XMLWriter::STORAGE_MEMORY); } // XML header $objWriter->startDocument('1.0', 'UTF-8', 'yes'); $objWriter->startElement('w:footnotes'); $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); $objWriter->writeAttribute('xmlns:w', 'http://schemas.openxmlformats.org/wordprocessingml/2006/main'); // write separator and continuation separator $objWriter->startElement('w:footnote'); $objWriter->writeAttribute('w:id', 0); $objWriter->writeAttribute('w:type', 'separator'); $objWriter->startElement('w:p'); $objWriter->startElement('w:r'); $objWriter->startElement('w:separator'); $objWriter->endElement(); // w:separator $objWriter->endElement(); // w:r $objWriter->endElement(); // w:p $objWriter->endElement(); // w:footnote $objWriter->startElement('w:footnote'); $objWriter->writeAttribute('w:id', 1); $objWriter->writeAttribute('w:type', 'continuationSeparator'); $objWriter->startElement('w:p'); $objWriter->startElement('w:r'); $objWriter->startElement('w:continuationSeparator'); $objWriter->endElement(); // w:continuationSeparator $objWriter->endElement(); // w:r $objWriter->endElement(); // w:p $objWriter->endElement(); // w:footnote foreach ($allFootnotesCollection as $footnote) { if ($footnote instanceof PHPWord_Section_Footnote) { $this->_writeFootnote($objWriter, $footnote); } } $objWriter->endElement(); // Return return $objWriter->getData(); } }