ILIAS
release_5-3 Revision v5.3.23-19-g915713cf615
◀ ilDoc Overview
class.ilCSVWriter.php
Go to the documentation of this file.
1
<?php
2
/*
3
+-----------------------------------------------------------------------------+
4
| ILIAS open source |
5
+-----------------------------------------------------------------------------+
6
| Copyright (c) 1998-2006 ILIAS open source, University of Cologne |
7
| |
8
| This program is free software; you can redistribute it and/or |
9
| modify it under the terms of the GNU General Public License |
10
| as published by the Free Software Foundation; either version 2 |
11
| of the License, or (at your option) any later version. |
12
| |
13
| This program is distributed in the hope that it will be useful, |
14
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
15
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16
| GNU General Public License for more details. |
17
| |
18
| You should have received a copy of the GNU General Public License |
19
| along with this program; if not, write to the Free Software |
20
| Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21
+-----------------------------------------------------------------------------+
22
*/
23
38
class
ilCSVWriter
39
{
40
private
$csv
=
''
;
41
private
$separator
=
','
;
42
private
$delimiter
=
'"'
;
43
private
$new_line
=
"\n"
;
44
private
$doUTF8Decoding
=
false
;
45
46
private
$first_entry
=
true
;
47
55
public
function
__construct
()
56
{
57
}
65
public
function
setSeparator
($a_sep)
66
{
67
$this->separator = $a_sep;
68
}
69
77
public
function
setDelimiter
($a_del)
78
{
79
$this->delimiter = $a_del;
80
}
81
88
public
function
addRow
()
89
{
90
$this->csv .=
$this->new_line
;
91
$this->first_entry =
true
;
92
}
93
100
public
function
setDoUTF8Decoding
(
$doUTF8Decoding
)
101
{
102
$this->doUTF8Decoding =
$doUTF8Decoding
? true :
false
;
103
}
104
112
public
function
addColumn
($a_col)
113
{
114
if
(!$this->first_entry) {
115
$this->csv .=
$this->separator
;
116
}
117
$this->csv .=
$this->delimiter
;
118
$this->csv .= $this->
quote
($a_col);
119
$this->csv .=
$this->delimiter
;
120
$this->first_entry =
false
;
121
}
122
130
public
function
getCSVString
()
131
{
132
return
$this->csv
;
133
}
134
143
private
function
quote
($a_str)
144
{
145
return
str_replace($this->delimiter, $this->delimiter . $this->delimiter, ($this->doUTF8Decoding) ? utf8_decode($a_str) : $a_str);
146
}
147
}
ilCSVWriter
Helper class to generate CSV files.
Definition:
class.ilCSVWriter.php:38
ilCSVWriter\addColumn
addColumn($a_col)
Add Column.
Definition:
class.ilCSVWriter.php:112
ilCSVWriter\addRow
addRow()
Add new line.
Definition:
class.ilCSVWriter.php:88
ilCSVWriter\$doUTF8Decoding
$doUTF8Decoding
Definition:
class.ilCSVWriter.php:44
ilCSVWriter\$first_entry
$first_entry
Definition:
class.ilCSVWriter.php:46
ilCSVWriter\quote
quote($a_str)
Quote Delimiter by doubling it This seems to be the standard way in Excel and Openoffice.
Definition:
class.ilCSVWriter.php:143
ilCSVWriter\setDoUTF8Decoding
setDoUTF8Decoding($doUTF8Decoding)
set to true if you want to utf8 decode for output.
Definition:
class.ilCSVWriter.php:100
ilCSVWriter\getCSVString
getCSVString()
Get CSV string.
Definition:
class.ilCSVWriter.php:130
ilCSVWriter\$separator
$separator
Definition:
class.ilCSVWriter.php:41
ilCSVWriter\setSeparator
setSeparator($a_sep)
Set Seperator.
Definition:
class.ilCSVWriter.php:65
ilCSVWriter\__construct
__construct()
Constructor.
Definition:
class.ilCSVWriter.php:55
ilCSVWriter\$delimiter
$delimiter
Definition:
class.ilCSVWriter.php:42
ilCSVWriter\$csv
$csv
Definition:
class.ilCSVWriter.php:40
ilCSVWriter\setDelimiter
setDelimiter($a_del)
Set delimiter.
Definition:
class.ilCSVWriter.php:77
ilCSVWriter\$new_line
$new_line
Definition:
class.ilCSVWriter.php:43
Services
Utilities
classes
class.ilCSVWriter.php
Generated on Sat Jan 18 2025 19:01:40 for ILIAS by
1.8.13 (using
Doxyfile
)