ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
File.php
Go to the documentation of this file.
1<?php
2/* vim: set expandtab tabstop=4 shiftwidth=4: */
3// +----------------------------------------------------------------------+
4// | PHP Version 4 |
5// +----------------------------------------------------------------------+
6// | Copyright (c) 1997-2002 The PHP Group |
7// +----------------------------------------------------------------------+
8// | This source file is subject to version 2.02 of the PHP license, |
9// | that is bundled with this package in the file LICENSE, and is |
10// | available at through the world-wide-web at |
11// | http://www.php.net/license/2_02.txt. |
12// | If you did not receive a copy of the PHP license and are unable to |
13// | obtain it through the world-wide-web, please send a note to |
14// | license@php.net so we can mail you a copy immediately. |
15// +----------------------------------------------------------------------+
16// | Author: Xavier Noguer <xnoguer@php.net> |
17// | Based on OLE::Storage_Lite by Kawai, Takanori |
18// +----------------------------------------------------------------------+
19//
20// $Id: File.php,v 1.12 2008/02/02 21:00:37 schmidt Exp $
21
22
23require_once 'OLE/PPS.php';
24require_once 'System.php';
25
33class OLE_PPS_File extends OLE_PPS
34{
40
48 function OLE_PPS_File($name)
49 {
50 $this->_tmp_dir = System::tmpdir();
51 $this->OLE_PPS(
52 null,
53 $name,
55 null,
56 null,
57 null,
58 null,
59 null,
60 '',
61 array());
62 }
63
71 function setTempDir($dir)
72 {
73 if (is_dir($dir)) {
74 $this->_tmp_dir = $dir;
75 return true;
76 }
77 return false;
78 }
79
86 function init()
87 {
88 $this->_tmp_filename = tempnam($this->_tmp_dir, "OLE_PPS_File");
89 $fh = @fopen($this->_tmp_filename, "w+b");
90 if ($fh == false) {
91 return $this->raiseError("Can't create temporary file");
92 }
93 $this->_PPS_FILE = $fh;
94 if ($this->_PPS_FILE) {
95 fseek($this->_PPS_FILE, 0);
96 }
97
98 return true;
99 }
100
107 function append($data)
108 {
109 if ($this->_PPS_FILE) {
110 fwrite($this->_PPS_FILE, $data);
111 } else {
112 $this->_data .= $data;
113 }
114 }
115
120 function getStream()
121 {
122 $this->ole->getStream($this);
123 }
124}
125?>
const OLE_PPS_TYPE_FILE
Definition: OLE.php:28
getStream()
Returns a stream for reading this file using fread() etc.
Definition: File.php:120
append($data)
Append data to PPS.
Definition: File.php:107
setTempDir($dir)
Sets the temp dir used for storing the OLE file.
Definition: File.php:71
init()
Initialization method.
Definition: File.php:86
OLE_PPS_File($name)
The constructor.
Definition: File.php:48
Definition: PPS.php:34
OLE_PPS($No, $name, $type, $prev, $next, $dir, $time_1st, $time_2nd, $data, $children)
The constructor.
Definition: PPS.php:128
& raiseError($message=null, $code=null, $mode=null, $options=null, $userinfo=null, $error_class=null, $skipmsg=false)
This method is a wrapper that returns an instance of the configured error class with this object's de...
Definition: PEAR.php:524
tmpdir()
Get the path of the temporal directory set in the system by looking in its environments variables.
Definition: System.php:454
$data