1<?php 2 3namespace PhpOffice\PhpSpreadsheet\Shared\OLE\PPS; 4 5// vim: set expandtab tabstop=4 shiftwidth=4: 6// +----------------------------------------------------------------------+ 7// | PHP Version 4 | 8// +----------------------------------------------------------------------+ 9// | Copyright (c) 1997-2002 The PHP Group | 10// +----------------------------------------------------------------------+ 11// | This source file is subject to version 2.02 of the PHP license, | 12// | that is bundled with this package in the file LICENSE, and is | 13// | available at through the world-wide-web at | 14// | http://www.php.net/license/2_02.txt. | 15// | If you did not receive a copy of the PHP license and are unable to | 16// | obtain it through the world-wide-web, please send a note to | 17// | license@php.net so we can mail you a copy immediately. | 18// +----------------------------------------------------------------------+ 19// | Author: Xavier Noguer <xnoguer@php.net> | 20// | Based on OLE::Storage_Lite by Kawai, Takanori | 21// +----------------------------------------------------------------------+ 22// 23use PhpOffice\PhpSpreadsheet\Shared\OLE; 24use PhpOffice\PhpSpreadsheet\Shared\OLE\PPS; 25 26/** 27 * Class for creating File PPS's for OLE containers. 28 * 29 * @author Xavier Noguer <xnoguer@php.net> 30 * 31 * @category PhpSpreadsheet 32 */ 33class File extends PPS 34{ 35 /** 36 * The constructor. 37 * 38 * @param string $name The name of the file (in Unicode) 39 * 40 * @see OLE::ascToUcs() 41 */ 42 public function __construct($name) 43 { 44 parent::__construct(null, $name, OLE::OLE_PPS_TYPE_FILE, null, null, null, null, null, '', []); 45 } 46 47 /** 48 * Initialization method. Has to be called right after OLE_PPS_File(). 49 * 50 * @return mixed true on success 51 */ 52 public function init() 53 { 54 return true; 55 } 56 57 /** 58 * Append data to PPS. 59 * 60 * @param string $data The data to append 61 */ 62 public function append($data) 63 { 64 $this->_data .= $data; 65 } 66} 67