Source of: /manual/en/function.error-reporting.php
<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.errorfunc.inc";
$setup = array (
'home' =>
array (
0 => 'index.php',
1 => 'PHP Manual',
),
'head' =>
array (
0 => 'UTF-8',
1 => 'en',
),
'this' =>
array (
0 => 'function.error-reporting.php',
1 => 'error_reporting',
),
'up' =>
array (
0 => 'ref.errorfunc.php',
1 => 'Error Handling Functions',
),
'prev' =>
array (
0 => 'function.error-log.php',
1 => 'error_log',
),
'next' =>
array (
0 => 'function.restore-error-handler.php',
1 => 'restore_error_handler',
),
);
$setup["toc"] = $TOC;
$setup["parents"] = $PARENTS;
manual_setup($setup);
manual_header();
?>
<div id="function.error-reporting" class="refentry">
<div class="refnamediv">
<h1 class="refname">error_reporting</h1>
<p class="verinfo">(PHP 4, PHP 5)</p><p class="refpurpose"><span class="refname">error_reporting</span> — <span class="dc-title">Sets which PHP errors are reported</span></p>
</div>
<a name="function.error-reporting.description"></a><div class="refsect1 description">
<h3 class="title">Description</h3>
<div class="methodsynopsis dc-description">
<span class="type">int</span> <span class="methodname"><b>error_reporting</b></span>
([ <span class="methodparam"><span class="type">int</span> <tt class="parameter">$level</tt></span>
] )</div>
<p class="para rdfs-comment">
The <b>error_reporting()</b> function sets the
<a href="errorfunc.configuration.php#ini.error-reporting" class="link">error_reporting</a>
directive at runtime. PHP has many levels of errors, using
this function sets that level for the duration (runtime) of
your script.
</p>
</div>
<a name="function.error-reporting.parameters"></a><div class="refsect1 parameters">
<h3 class="title">Parameters</h3>
<p class="para">
</p><dl>
<dt class="varlistentry">
<span class="term"><i><tt class="parameter">level</tt></i>
</span>
</dt><dd class="listitem">
<p class="para">
The new <a href="errorfunc.configuration.php#ini.error-reporting" class="link">error_reporting</a>
level. It takes on either a bitmask, or named constants. Using named
constants is strongly encouraged to ensure compatibility for future
versions. As error levels are added, the range of integers increases,
so older integer-based error levels will not always behave as expected.
</p>
<p class="para">
The available error level constants and the actual
meanings of these error levels are described in the
<a href="errorfunc.constants.php" class="link">predefined constants</a>.
</p>
</dd>
</dl>
<p>
</p>
</div>
<a name="function.error-reporting.returnvalues"></a><div class="refsect1 returnvalues">
<h3 class="title">Return Values</h3>
<p class="para">
Returns the old <a href="errorfunc.configuration.php#ini.error-reporting" class="link">error_reporting</a>
level.
</p>
</div>
<a name="function.error-reporting.changelog"></a><div class="refsect1 changelog">
<h3 class="title">Changelog</h3>
<p class="para">
</p><table class="doctable informaltable">
<thead valign="middle">
<tr valign="middle">
<th>Version</th>
<th>Description</th>
</tr>
</thead>
<tbody valign="middle" class="tbody">
<tr valign="middle">
<td align="left">5.0.0</td>
<td align="left"><b><tt class="constant">E_STRICT</tt></b> introduced (not part of <b><tt class="constant">E_ALL</tt></b>).</td>
</tr>
<tr valign="middle">
<td align="left">5.2.0</td>
<td align="left"><b><tt class="constant">E_RECOVERABLE_ERROR</tt></b> introduced.</td>
</tr>
<tr valign="middle">
<td align="left">5.3.0</td>
<td align="left"><b><tt class="constant">E_DEPRECATED</tt></b> and <b><tt class="constant">E_USER_DEPRECATED</tt></b> introduced.</td>
</tr>
<tr valign="middle">
<td align="left">6.0.0</td>
<td align="left"><b><tt class="constant">E_STRICT</tt></b> became part of <b><tt class="constant">E_ALL</tt></b>.</td>
</tr>
</tbody>
</table>
<p>
</p>
</div>
<a name="function.error-reporting.examples"></a><div class="refsect1 examples">
<h3 class="title">Examples</h3>
<p class="para">
</p><div class="example">
<p><b>Example #1 <b>error_reporting()</b> examples</b></p>
<div class="example-contents programlisting">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB"><?php<br /><br /></span><span style="color: #FF8000">// Turn off all error reporting<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Report simple running errors<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ERROR </span><span style="color: #007700">| </span><span style="color: #0000BB">E_WARNING </span><span style="color: #007700">| </span><span style="color: #0000BB">E_PARSE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Reporting E_NOTICE can be good too (to report uninitialized<br />// variables or catch variable name misspellings ...)<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ERROR </span><span style="color: #007700">| </span><span style="color: #0000BB">E_WARNING </span><span style="color: #007700">| </span><span style="color: #0000BB">E_PARSE </span><span style="color: #007700">| </span><span style="color: #0000BB">E_NOTICE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Report all errors except E_NOTICE<br />// This is the default value set in php.ini<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ALL </span><span style="color: #007700">^ </span><span style="color: #0000BB">E_NOTICE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Report all PHP errors (see changelog)<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ALL</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Report all PHP errors<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(-</span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// Same as error_reporting(E_ALL);<br /></span><span style="color: #0000BB">ini_set</span><span style="color: #007700">(</span><span style="color: #DD0000">'error_reporting'</span><span style="color: #007700">, </span><span style="color: #0000BB">E_ALL</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?></span>
</span>
</code></div>
</div>
</div><p>
</p>
</div>
<a name="function.error-reporting.notes"></a><div class="refsect1 notes">
<h3 class="title">Notes</h3>
<div class="warning"><b class="warning">Warning</b>
<p class="simpara">
Most of <b><tt class="constant">E_STRICT</tt></b> errors are evaluated at the
compile time thus such errors are not reported in the file where
<a href="errorfunc.configuration.php#ini.error-reporting" class="link">error_reporting</a> is enhanced
to include <b><tt class="constant">E_STRICT</tt></b> errors (and vice versa).
</p>
</div>
<div class="tip"><b class="tip">Tip</b>
<p class="simpara">
Passing in the value <i>-1</i> will show every possible error,
even when new levels and constants are added in future PHP versions. The
<b><tt class="constant">E_ALL</tt></b> constant also behaves this way as of PHP 6.
</p>
</div>
</div>
<a name="function.error-reporting.seealso"></a><div class="refsect1 seealso">
<h3 class="title">See Also</h3>
<p class="para">
</p><ul class="simplelist">
<li class="member">The <a href="errorfunc.configuration.php#ini.display-errors" class="link">display_errors</a> directive</li>
<li class="member">The <a href="errorfunc.configuration.php#ini.html-errors" class="link">html_errors</a> directive</li>
<li class="member">The <a href="errorfunc.configuration.php#ini.xmlrpc-errors" class="link">xmlrpc_errors</a> directive</li>
<li class="member"><a href="function.ini-set.php" class="function" rel="rdfs-seeAlso">ini_set()</a> - Sets the value of a configuration option</li>
</ul><p>
</p>
</div>
</div><?php manual_footer(); ?>