blob: 646956cd5a027e63a4405b774806a384b1be21b8 [file] [log] [blame]
adminb0dd10f2006-08-25 17:25:49 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html>
3<head>
4
Derek Allard404e35d2007-08-07 01:00:45 +00005<title>CodeIgniter User Guide : File Helper</title>
adminb0dd10f2006-08-25 17:25:49 +00006
7<style type='text/css' media='all'>@import url('../userguide.css');</style>
8<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />
9
admin17a890d2006-09-27 20:42:42 +000010<script type="text/javascript" src="../nav/nav.js"></script>
admin2296fc32006-09-27 21:07:02 +000011<script type="text/javascript" src="../nav/prototype.lite.js"></script>
admin17a890d2006-09-27 20:42:42 +000012<script type="text/javascript" src="../nav/moo.fx.js"></script>
Derek Allardb3412372007-10-25 12:15:16 +000013<script type="text/javascript" src="../nav/user_guide_menu.js"></script>
adminb0dd10f2006-08-25 17:25:49 +000014
15<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
16<meta http-equiv='expires' content='-1' />
17<meta http-equiv= 'pragma' content='no-cache' />
18<meta name='robots' content='all' />
19<meta name='author' content='Rick Ellis' />
Derek Allardd2df9bc2007-04-15 17:41:17 +000020<meta name='description' content='CodeIgniter User Guide' />
adminb0dd10f2006-08-25 17:25:49 +000021
22</head>
23<body>
24
25<!-- START NAVIGATION -->
26<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
27<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle.jpg" width="153" height="44" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div>
28<div id="masthead">
29<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
30<tr>
Derek Allard39b622d2008-01-16 21:10:09 +000031<td><h1>CodeIgniter User Guide Version 1.6.0</h1></td>
adminc0d5d522006-10-30 19:40:35 +000032<td id="breadcrumb_right"><a href="../toc.html">Table of Contents Page</a></td>
adminb0dd10f2006-08-25 17:25:49 +000033</tr>
34</table>
35</div>
36<!-- END NAVIGATION -->
37
38
39<!-- START BREADCRUMB -->
40<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
41<tr>
42<td id="breadcrumb">
Derek Allardd2df9bc2007-04-15 17:41:17 +000043<a href="http://www.codeigniter.com/">CodeIgniter Home</a> &nbsp;&#8250;&nbsp;
adminb0dd10f2006-08-25 17:25:49 +000044<a href="../index.html">User Guide Home</a> &nbsp;&#8250;&nbsp;
45File Helper
46</td>
Derek Allardbc030912007-06-24 18:25:29 +000047<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="codeigniter.com/user_guide/" />Search User Guide&nbsp; <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" />&nbsp;<input type="submit" class="submit" name="sa" value="Go" /></form></td>
adminb0dd10f2006-08-25 17:25:49 +000048</tr>
49</table>
50<!-- END BREADCRUMB -->
51
52<br clear="all" />
53
54
55<!-- START CONTENT -->
56<div id="content">
57
58
59<h1>File Helper</h1>
60
61<p>The File Helper file contains functions that assist in working with files.</p>
62
63
64<h2>Loading this Helper</h2>
65
66<p>This helper is loaded using the following code:</p>
67<code>$this->load->helper('file');</code>
68
69<p>The following functions are available:</p>
70
71<h2>read_file('<var>path</var>')</h2>
72
73<p>Returns the data contained in the file specified in the path. Example:</p>
74
75<code>$string = read_file('./path/to/file.php');</code>
76
77<p>The path can be a relative or full server path. Returns FALSE (boolean) on failure.</p>
78
79<p class="important"><strong>Note:</strong> The path is relative to your main site index.php file, NOT your controller or view files.
Derek Allardd2df9bc2007-04-15 17:41:17 +000080CodeIgniter uses a front controller so paths are always relative to the main site index.</p>
adminb0dd10f2006-08-25 17:25:49 +000081
Derek Allard4e387c32007-12-22 16:41:29 +000082<p>If your server is running an open_basedir restriction this function
adminb0dd10f2006-08-25 17:25:49 +000083might not work if you are trying to access a file above the calling script.</p>
84
85<h2>write_file('<var>path</var>', <kbd>$data</kbd>)</h2>
86
87<p>Writes data to the file specified in the path. If the file does not exist the function will create it. Example:</p>
88
89<code>
90$data = 'Some file data';<br />
91<br />
92if ( ! write_file('./path/to/file.php', $data))<br />
93{<br />
94&nbsp;&nbsp;&nbsp;&nbsp; echo 'Unable to write the file';<br />
95}<br />
96else<br />
97{<br />
98&nbsp;&nbsp;&nbsp;&nbsp; echo 'File written!';<br />
99}</code>
100
Derek Allardc6441282007-07-04 23:54:32 +0000101<p>You can optionally set the write mode via the third parameter:</p>
adminb64b0be2006-09-02 17:19:54 +0000102
103<code>write_file('./path/to/file.php', $data, <var>'r+'</var>);</code>
104
105<p>The default mode is <kbd>wb</kbd>. Please see the <a href="http://php.net/fopen">PHP user guide</a> for mode options.</p>
106
adminb0dd10f2006-08-25 17:25:49 +0000107<p>Note: In order for this function to write data to a file its file permissions must be set such that it is writable (666, 777, etc.).
108If the file does not already exist, the directory containing it must be writable.</p>
109
110<p class="important"><strong>Note:</strong> The path is relative to your main site index.php file, NOT your controller or view files.
Derek Allardd2df9bc2007-04-15 17:41:17 +0000111CodeIgniter uses a front controller so paths are always relative to the main site index.</p>
adminb0dd10f2006-08-25 17:25:49 +0000112
113
114
115<h2>delete_files('<var>path</var>')</h2>
116
117<p>Deletes ALL files contained in the supplied path. Example:</p>
Derek Allard4ae32252007-05-04 11:25:13 +0000118<code>delete_files('./path/to/directory/');</code>
adminb0dd10f2006-08-25 17:25:49 +0000119
120<p>If the second parameter is set to <kbd>true</kbd>, any directories contained within the supplied root path will be deleted as well. Example:</p>
121
Derek Allard4ae32252007-05-04 11:25:13 +0000122<code>delete_files('./path/to/directory/', TRUE);</code>
adminb0dd10f2006-08-25 17:25:49 +0000123
124<p class="important"><strong>Note:</strong> The files must be writable or owned by the system in order to be deleted.</p>
125
126
admine85c05d2006-10-23 20:18:34 +0000127<h2>get_filenames('<var>path/to/directory/</var>')</h2>
128
129<p>Takes a server path as input and returns an array containing the names of all files contained within it. The file path
130can optionally be added to the file names by setting the second parameter to TRUE.</p>
adminb0dd10f2006-08-25 17:25:49 +0000131
132
133</div>
134<!-- END CONTENT -->
135
136
137<div id="footer">
138<p>
139Previous Topic:&nbsp;&nbsp;<a href="directory_helper.html">Directory Helper</a>
140&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
141<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
142<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
143Next Topic:&nbsp;&nbsp;<a href="form_helper.html">Form Helper</a>
Derek Allardc6441282007-07-04 23:54:32 +0000144</p>
Derek Allardd2df9bc2007-04-15 17:41:17 +0000145<p><a href="http://www.codeigniter.com">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2007 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">Ellislab, Inc.</a></p>
adminb0dd10f2006-08-25 17:25:49 +0000146</div>
147
148</body>
149</html>