[ Mini Kiebo ]
Server: Windows NT AKFAR_SERVER 10.0 build 26200 (Windows 10) AMD64
Path:
D:
/
xampp
/
htdocs
/
bem
/
word
/
src
/
PhpWord
/
Writer
/
Word2007
/
Part
/
[
Home
]
File: AbstractPart.php
<?php /** * This file is part of PHPWord - A pure PHP library for reading and writing * word processing documents. * * PHPWord is free software distributed under the terms of the GNU Lesser * General Public License version 3 as published by the Free Software Foundation. * * For the full copyright and license information, please read the LICENSE * file that was distributed with this source code. For the full list of * contributors, visit https://github.com/PHPOffice/PHPWord/contributors. * * @see https://github.com/PHPOffice/PHPWord * @copyright 2010-2018 PHPWord contributors * @license http://www.gnu.org/licenses/lgpl.txt LGPL version 3 */ namespace PhpOffice\PhpWord\Writer\Word2007\Part; use PhpOffice\Common\XMLWriter; use PhpOffice\PhpWord\Exception\Exception; use PhpOffice\PhpWord\Settings; use PhpOffice\PhpWord\Writer\AbstractWriter; /** * Word2007 writer part abstract class */ abstract class AbstractPart { /** * Parent writer * * @var \PhpOffice\PhpWord\Writer\AbstractWriter */ protected $parentWriter; /** * @var string Date format */ protected $dateFormat = 'Y-m-d\TH:i:sP'; /** * Write part * * @return string */ abstract public function write(); /** * Set parent writer. * * @param \PhpOffice\PhpWord\Writer\AbstractWriter $writer */ public function setParentWriter(AbstractWriter $writer = null) { $this->parentWriter = $writer; } /** * Get parent writer * * @throws \PhpOffice\PhpWord\Exception\Exception * @return \PhpOffice\PhpWord\Writer\AbstractWriter */ public function getParentWriter() { if (!is_null($this->parentWriter)) { return $this->parentWriter; } throw new Exception('No parent WriterInterface assigned.'); } /** * Get XML Writer * * @return \PhpOffice\Common\XMLWriter */ protected function getXmlWriter() { $useDiskCaching = false; if (!is_null($this->parentWriter)) { if ($this->parentWriter->isUseDiskCaching()) { $useDiskCaching = true; } } if ($useDiskCaching) { return new XMLWriter(XMLWriter::STORAGE_DISK, $this->parentWriter->getDiskCachingDirectory(), Settings::hasCompatibility()); } return new XMLWriter(XMLWriter::STORAGE_MEMORY, './', Settings::hasCompatibility()); } /** * Write an XML text, this will call text() or writeRaw() depending on the value of Settings::isOutputEscapingEnabled() * * @param string $content The text string to write * @return bool Returns true on success or false on failure */ protected function writeText($content) { if (Settings::isOutputEscapingEnabled()) { return $this->getXmlWriter()->text($content); } return $this->getXmlWriter()->writeRaw($content); } }