blob: 7b778b80933c41b3e2eb16f100837be2e49df763 [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">
Derek Allardafd99ac2008-01-19 19:59:14 +00002<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
adminb0dd10f2006-08-25 17:25:49 +00003<head>
4
Derek Jonesfd93d222008-05-06 15:18:50 +00005<title>Output Class : CodeIgniter User Guide</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' />
Derek Allard3d879d52008-01-18 19:41:32 +000019<meta name='author' content='ExpressionEngine Dev Team' />
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 Jones6b7b11f2008-05-06 16:07:27 +000031<td><h1>CodeIgniter User Guide Version 1.6.2</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 Jones7a9193a2008-01-21 18:39:20 +000043<a href="http://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;
45Output Class
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>Output Class</h1>
60
61<p>The Output class is a small class with one main function: To send the finalized web page to the requesting browser. It is
62also responsible for <a href="../general/caching.html">caching</a> your web pages, if you use that feature.</p>
63
64<p class="important"><strong>Note:</strong> This class is initialized automatically by the system so there is no need to do it manually.</p>
65
admine334c472006-10-21 19:44:22 +000066<p>Under normal circumstances you won't even notice the Output class since it works transparently without your intervention.
adminb0dd10f2006-08-25 17:25:49 +000067For example, when you use the <a href="../libraries/loader.html">Loader</a> class to load a view file, it's automatically
Derek Allardd2df9bc2007-04-15 17:41:17 +000068passed to the Output class, which will be called automatically by CodeIgniter at the end of system execution.
adminb0dd10f2006-08-25 17:25:49 +000069It is possible, however, for you to manually intervene with the output if you need to, using either of the two following functions:</p>
70
71<h2>$this->output->set_output();</h2>
72
Derek Allardc6441282007-07-04 23:54:32 +000073<p>Permits you to manually set the final output string. Usage example:</p>
adminb0dd10f2006-08-25 17:25:49 +000074
75<code>$this->output->set_output($data);</code>
76
77<p><strong>Important:</strong> If you do set your output manually, it must be the last thing done in the function you call it from.
78For example, if you build a page in one of your controller functions, don't set the output until the end.</p>
79
80
81<h2>$this->output->get_output();</h2>
82
Derek Allardc6441282007-07-04 23:54:32 +000083<p>Permits you to manually retrieve any output that has been sent for storage in the output class. Usage example:</p>
adminb0dd10f2006-08-25 17:25:49 +000084<code>$string = $this->output->get_output();</code>
85
86<p>Note that data will only be retrievable from this function if it has been previously sent to the output class by one of the
Derek Allardd2df9bc2007-04-15 17:41:17 +000087CodeIgniter functions like <var>$this->load->view()</var>.</p>
adminb0dd10f2006-08-25 17:25:49 +000088
89
adminf5136322006-09-21 02:44:57 +000090<h2>$this->output->set_header();</h2>
91
Derek Allardc6441282007-07-04 23:54:32 +000092<p>Permits you to manually set server headers, which the output class will send for you when outputting the final rendered display. Example:</p>
adminf5136322006-09-21 02:44:57 +000093
94<code>
95$this->output->set_header("HTTP/1.0 200 OK");<br />
96$this->output->set_header("HTTP/1.1 200 OK");<br />
97$this->output->set_header('Last-Modified: '.gmdate('D, d M Y H:i:s', $last_update).' GMT');<br />
98$this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate");<br />
99$this->output->set_header("Cache-Control: post-check=0, pre-check=0", false);<br />
100$this->output->set_header("Pragma: no-cache"); </code>
101
adminb0dd10f2006-08-25 17:25:49 +0000102
admin08f60202006-10-03 05:28:00 +0000103<h2>$this->output->enable_profiler();</h2>
104
105<p>Permits you to enable/disable the <a href="../general/profiling.html">Profiler</a>, which will display benchmark and other data
106at the bottom of your pages for debugging and optimization purposes.</p>
107
Derek Allard335d8852008-02-22 21:19:02 +0000108<p>To enable the profiler place the following function anywhere within your <a href="../general/controllers.html">Controller</a> functions:</p>
admin08f60202006-10-03 05:28:00 +0000109<code>$this->output->enable_profiler(TRUE);</code>
110
111<p>When enabled a report will be generated and inserted at the bottom of your pages.</p>
112
113<p>To disable the profiler you will use:</p>
114<code>$this->output->enable_profiler(FALSE);</code>
115
116
117
adminb0dd10f2006-08-25 17:25:49 +0000118</div>
119<!-- END CONTENT -->
120
121
122<div id="footer">
123<p>
124Previous Topic:&nbsp;&nbsp;<a href="language.html">Language Class</a>
125&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
126<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
127<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
128Next Topic:&nbsp;&nbsp;<a href="pagination.html">Pagination Class</a>
Derek Allardc6441282007-07-04 23:54:32 +0000129</p>
Derek Jones07870432008-02-13 03:49:26 +0000130<p><a href="http://codeigniter.com">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006-2008 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">Ellislab, Inc.</a></p>
adminb0dd10f2006-08-25 17:25:49 +0000131</div>
132
133</body>
134</html>